小编Rad*_*One的帖子

指针在C中混淆

我是C语言编程的新手,我一直在考虑这个问题很长一段时间了:

char* name;
scanf("%s", name);
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?例如,如果我输入"Hello",程序只会给我一个错误.但是上面的代码与此完全相同吗?

char* name = "Hello";
Run Code Online (Sandbox Code Playgroud)

c pointers character

3
推荐指数
1
解决办法
86
查看次数

C - SizeOf指针

char c[] = {'a','b','c'};
int* p = &c[0];
printf("%i\n", sizeof(*p)); //Prints out 4
printf("%i\n", sizeof(*c)); //Prints out 1
Run Code Online (Sandbox Code Playgroud)

我对这部分代码非常困惑.p和c都表示第0个索引处的数组c的地址.但是为什么sizeof(*p)打印4?不应该是1吗?

c arrays pointers character sizeof

0
推荐指数
1
解决办法
2762
查看次数

标签 统计

c ×2

character ×2

pointers ×2

arrays ×1

sizeof ×1