Fre*_*red 0 c string command-line arguments
为什么这不起作用.
printf("%s\n", argv[1][3]);
Run Code Online (Sandbox Code Playgroud)
这有效吗?
printf("%c\n", argv[1][3]);
Run Code Online (Sandbox Code Playgroud)
因为%s格式说明符告诉printf参数是以null结尾的字符串.你给的printf是一个字符 - argv数组第二个元素中的第四个字符.
如果要将字符串从第四个字符打印到字符串的末尾,也可以这样做,只需要获得指向该字符的指针:
printf("%s\n", &argv[1][3]);
Run Code Online (Sandbox Code Playgroud)
或者,如果您愿意:
printf("%s\n", argv[1] + 3);
Run Code Online (Sandbox Code Playgroud)