C语言求助
#include <stdio.h>int main()
{
char *name = "FishC";
char name1[] = {'F','i','s','h','C'};
printf("%d\n",sizeof(name));
printf("%d\n",sizeof(name1));
return 0;
}
============================
# gcc test.c && ./a.out
8
5
请问为何运行结果里name的长度是8? 这个name的类型是char *也就是指针类型,而指针占8个字节
*name是char类型,占一个字节 我 win10,VS2015 运行的结果是
4
5
计较这些东东没有什么意义,知道是怎么回事就行了,因为不同的系统(32位或64位)会有所不同,不同的编译器设置也会有所不同。 你求是char类型的数组的大小而不是那个字符串的大小
页:
[1]