我是C编程的初学者。
当我输入###
时,我想退出程序。
if(char ch1 = "###")
return 0;
我试过了,但那不起作用。
答案 0 :(得分:1)
您需要strcmp()
来比较c中的字符串,例如
char input[100];
if ((scanf("%99s", input) != 1) || (strcmp(input, "###") == 0))
return 0;
答案 1 :(得分:0)
if(char ch1 = "###")
没有意义,因为您声明char
并尝试使用字符串文字char*
初始化它。使用
char str[4]; //Declare the array to hold 3 chars +1 for '\0'
scanf("%3s", str); //Scan a maximum of 3 characters, +1 for the '\0'
if(strcmp(str, "###") == 0) //If str is equal to "###"
return 0; //End the function
您无法使用==
比较两个字符串。它将比较指针而不是实际内容。因此,请使用strcmp
(您需要包含string.h
),如上面的代码段所示。