我提示用户输入数组的长度,用这个输入初始化一个 char[] 数组,然后提示用户输入一条消息以输入 char[] 数组。
我正在阅读用户消息的第一个字符getchar()
。
但是,在读取任何用户输入之前读取getchar()
换行符。'\n'
似乎是'\n'
从前面printf
提示用户的语句中得到的……
下面是相关代码:
#include <stdio.h>
int main(void) {
int len = 0,
originalLen = 0;
printf("\n\nWhat is the length of the array? ");
scanf("%d", &originalLen);
char str[originalLen]; // intitializing the array
printf("Enter a message to enter into the array: ");
char target = getchar();
str[len] = target;
// why is getchar() reading '\n'?
if (target == '\n') {
printf("\n...what happened?\n");
}
return 0;
} // end of main