我正在尝试使用Ubuntu终端来显示用户输入。如果用户输入“退出”,程序应该退出。如果用户输入“/ dev / pts / 1”之外的其他内容,则应显示“无法打开以进行写入”。无论我输入什么内容,该程序都会继续打印else语句。请帮助。
#include <stdio.h>
main()
{
FILE *fpt;
char str[100];
char term[20];
fpt = fopen("/dev/pts/1", "w");
while(1)
{
printf("Enter the terminal to display in: ");
scanf("%s", term);
if(term != "exit");
{
if(term == "/dev/pts/1")
{
printf("Enter the text to display: ");
scanf("%s", str);
fprintf(fpt,"%s\n", str);
}
else
{
printf("Unable to open %s for writing\n", term);
}
}
}
fclose(fpt);
}
答案 0 :(得分:1)
使用strcmp()
比较字符串:
#include <string.h>
if (strcmp(term, "/dev/pts/1") == 0) {
// Strings are equal
}
else {
// Strings are different.
}