C中带索引的指针和数组
我的密码里有这个C中带索引的指针和数组,c,arrays,pointers,C,Arrays,Pointers,我的密码里有这个 char *ch = &(string[i]); printf(ch); 你们想打印数组中的某个元素,但若我把它改为 char *ch = &(string[20]); printf(ch); 它会打印20号空间及以上的内容,为什么会这样,我如何尝试修复 感谢您的支持,char*上的printf将打印所有内容,直到它碰到\0字符,因为在c中,字符串是char*s 如果只想打印单个字符,请执行以下操作: printf("%c",ch[0]); 你说的“修复”
char *ch = &(string[i]);
printf(ch);
你们想打印数组中的某个元素,但若我把它改为
char *ch = &(string[20]);
printf(ch);
它会打印20号空间及以上的内容,为什么会这样,我如何尝试修复
感谢您的支持,
char*
上的printf
将打印所有内容,直到它碰到\0
字符,因为在c中,字符串是char*s
如果只想打印单个字符,请执行以下操作:
printf("%c",ch[0]);
你说的“修复”是什么意思?你想要什么行为?i是一个由while循环和fix确定的int,我的意思是它从位置i(int)打印到该数组的末尾,
i
的值是多少?好的。。。没有打印任何内容时,i
的值是多少?它可能应该是printf(“%s”,字符串)代码>或放置(字符串)代码>。字符串可能包含一个“%”
或三个。这不是他所要求的。他想知道为什么它没有像应该的那样打印字符串的其余部分。