我在代码中有以下C代码。c
int main(int argc, char *argv[]) {
FILE *openFile = NULL;
openFile=stdin;
}
但是当我编译并运行代码时
gcc -g -o compiledcode code.c
./compiledcode
终端不会提示我输入。怎么了?
答案 0 :(得分:1)
您只是将stdin作为文件打开,但没有读取文件。 从stdin获取输入的方法有很多。
函数getchar
可用于从stdin读取单个字符。使用getc()
或fgetc()
从任意文件流中读取。
示例:
int c = getchar();
printf("you entered %c\n", c);
函数fgets
可用于从文件中读取一行。
示例:
char data[200];
fgets(data, sizeof(data), stdin); // we type stdin as file.
printf("you entered %s\n", data);
函数scanf
及其函数系列可用于从stdin读取许多不同的格式。
例如:
char data[200]; // size need be bigger or equal to input length
scanf("%199s", data); // Protect from buffer overflow
printf("you entered %s\n", data);