我想将一个字符从一个变量放到C中的一个字符数组中。另外我想打印后面的反转数组,因为您可以看到但现在不是问题。如何将字符从变量放入C中的数组?
这是迄今为止我已经得到了代码:
作为标准输入我使用的是一个txt文件与“< input.txt中”作为命令行参数,它有57个字符。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int counter = 0;
char character_array[57];
int i = 0;
int j = 0;
char character = 0;
// While EOF is not encountered read each character
while (counter != EOF)
{
// Print each character
printf("%c", counter);
// Continue getting characters from the stdin/input file
counter = getchar(stdin);
// Put each character into an array
character_array[j] = { counter };
j = j + 1;
}
// Print the array elements in reverse order
for (i = 58; i > 0; i--)
{
character = character_array[i];
printf("%c", character);
}
return 0;
}
我的IDE在第一个花括号“预期表达式”之后的第35行说。
// Put each character into an array
character_array[j] = { counter };
所以我想它失败了。我假设我不能像数组中那样放置字符变量?否则我会怎么做呢?
PS:我是新来的C.
您是否尝试删除'counter'周围的'{'和'}'? – mch 2014-11-14 13:24:25
'character_array [j] = counter;'但是最好使用'scanf(“%s”,character_array);'并且一次读取整个字符串。请注意,你的character_array数组最好再长一点! – i486 2014-11-14 13:26:15
和'getchar(stdin)' - >'getchar()' – BLUEPIXY 2014-11-14 13:27:45