我正在使用OSX终端来编译和运行我的C代码。
出于某种原因,每当我想使用OSX终端从程序中获取输入时,终端实际上将我的代码的第一行作为输入,而不是允许我输入输入(例如字符串)。 WEIRD!
我将展示我的简单程序以及输出的外观。
#include <stdio.h>
#include <stdlib.h>
#include <strings.h>
int main(void){
char text[100];
printf("Type a text: \n");
gets(text);
printf("%s\n",text);
return 0;
}
终端的输出:
Type a text:
warning: this program uses gets(), which is unsafe.
#include <stdio.h>
答案 0 :(得分:0)
<"file name"
表示从名为“文件名”的文件中获取输入,因此当您使用./a.out<"file name"
运行它时,您告诉shell使用源文件作为执行程序的输入。仅使用./a.out
运行它。