从C中的字符串中打印出所有其他字符的最简单方法?我已经尝试使用
遍历数组int main (void)
for(int i = 0; i < strlen(input); i+=2)
{
word[i] += input[i];
}
答案 0 :(得分:6)
为什么不只在循环中打印它?
for(int i = 0; i < strlen(input); i+=2)
{
putchar(input[i]);
}
如果仅要将每个第二个字符复制到另一个数组中,则您的错误是使用相同的索引word[i] += input[i];
并如@bcperth所述,也使用+ =运算符代替常规分配'='
您应该做的是:
word[i/2] = input[i];
#include <stdio.h>
#include <string.h>
int main(void) {
char* p = "hello world";
char s[32] = "";
for(int i = 0; i < strlen(p); i+=2){
putchar(p[i]);
s[i/2]=p[i];
}
printf("\n\n2nd option\n%s", s);
return 0;
}
输出:
hlowrd
2nd option
hlowrd