定义一个比较长的字符数组,但是存一个比较短的字符串,将字符数组中全部元素打印出来,结果理解不了
定义一个比较长的字符数组,但是存一个比较短的字符串第一次按照字符串的方式打印出来,没有问题,可以理解。
程序代码:
#include <stdio.h> int main() { char country[5][20]= { "China", "Japan", "Russian", "America", "England" }; int i; for (i=0;i<5;i++) { printf("%s\n",country[i]); }; return 0; }
第二次,将字符数组中的元素,逐个打印出来,为什么有效单词后面都是aaa...,有效单词后面有个'\0',后面就不确定了,但是不管是不是'\0',现在打印出来都是aaa,怎么理解?
程序代码:
#include <stdio.h> int main() { char country[5][20]= { "China", "Japan", "Russian", "America", "England" }; int i,j; for (i=0;i<5;i++) { for (j=0;j<20;j++) { printf("%c",country[i][j]); } printf("\n"); }; return 0; }
[此贴子已经被作者于2017-8-16 17:30编辑过]