指针直接存放字符串
char *a =“snhjsidjsd”;请问这样到底可不可以,不是说指针只是存放一个地址吗{:5_99:} https://baijiahao.baidu.com/s?id=1604208649221500040&wfr=spider&for=pc 你得明白指针的作用是啥,指针是指向一个内存地址
或者说指针是一把钥匙,它能打开一幢房子,房子里面才是真正的字符串
你sizeof 指针看看,它返回的结果一定是一个int类型的数,这个数是一个地址,从这个地址开始,按顺序排放着一堆数据,这个数据整合起来就是“snhjsidjsd” “snhjsidjsd”
这就是一个地址
字符串就是一个地址
#include <stdio.h>
int main(void) {
printf("%p\n", "1234");
printf("%c\n", "abcd");
return 0;
}
#include <stdio.h>
int main(void) {
char *num = "1234";
char *str = "abcd";
printf("%p\n", num);
printf("%c\n", str);
return 0;
}
页:
[1]