为什么这不起作用。
printf("%s\n", argv[1][3]);
什么时候有效?
printf("%c\n", argv[1][3]);
答案 0 :(得分:6)
因为%s
格式说明符告诉printf
该参数是以空字符结尾的字符串。你给printf
一个字符 - argv
数组的第二个元素中的第四个字符。
如果要将字符串从第四个字符打印到字符串的末尾,也可以这样做,只需要获得指向该字符的指针:
printf("%s\n", &argv[1][3]);
或者,如果您愿意:
printf("%s\n", argv[1] + 3);
答案 1 :(得分:2)