1> char arrc[][5] = { {'0','0','0','0','\0'},{'0','0','0','0','\0'}, {'0','0','0','0','\0'}, {'0','0','0','0','\0'}, {'0','0','0','0','\0'} };
2> char* ptrc[5] = { {'0','0','0','0','\0'}, {'0','0','0','0','\0'}, {'0','0','0','0','\0'}, {'0','0','0','0','\0'}, {'0','0','0','0','\0'} };
3> char arrs[][5] = { "0000","0000","0000","0000","0000" };
4> char* ptrs[5] = { "0000","0000","0000","0000","0000" };
1.請問這四種方式有什么不同?
2.請問字符串就是字符數(shù)組+空字符這種說法正確嗎?書上都是這么說,但如果正確的話,為什么第2個賦值是錯誤的?
3.如果把1和2的值改成下面這樣呢?也就是在'\0'后面再加一個'0',會被截斷嗎?但是訪問的話,可以訪問到這個'0'啊!
{ {'0','0','0','0','\0','0'}, {'0','0','0','0','\0','0'}, {'0','0','0','0','\0','0'}, {'0','0','0','0','\0','0'}, {'0','0','0','0','\0','0'} };
感謝!
|