我对C中的指针有疑问.
[1] char *somestring = "somestring"
Run Code Online (Sandbox Code Playgroud)
和
[2] int *someint = 45
Run Code Online (Sandbox Code Playgroud)
为什么[1]有效,[2]没有?
为什么我们
printf("%s",str1);
Run Code Online (Sandbox Code Playgroud)
并不是
printf("%s",*str1);
Run Code Online (Sandbox Code Playgroud)
?
在C中,一个文字字符串基本上是一个(只读)字符数组,所以char*(是的,它应该是const char*,但是它会丢失到历史记录中).文字int不是数组或指针,因此制作指向它的指针是没有意义的.类型不匹配.