我想获取一个字符数组的元素,但是没有成功,问题是我只获取了第一个和最后一个元素,仅此而已,我的代码是:
void getcharacters(char *cad)
{
int l;
int *i;
l=strlen(cad);
for (i=&cad[0];i<&cad[l];i++){
printf("%c\n",*cad);
}
}
有什么帮助吗? 谢谢
最佳答案
int
的大小可以是 char
大小的 4 倍,所以当您执行 i++
时,您实际上跳过 3 个字符。
此外,您打印出 *cad
而不是 *i
。
修复将 i
更改为 char*
并打印 *i
而不是 *cad
关于c - C中用于获取字符串的指针算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13852540/