【发布时间】:2017-02-16 11:44:02
【问题描述】:
我正在尝试实现 IF 语句
在我的C-Server中。
read(client_fd,received_data,100);
printf("%s",received_data);
如果接收到的数据等于“test”,我想打印“ooo”
if (received_data == "test") {
printf('ooo');
}
?
上面的例子会导致错误。 (无法编译)
我对 C 了解不多。
更新:
现在我可以正常编译了(将 'ooo' 更改为 "ooo" 后)
但是虽然我正在向它发送“测试”.. if 语句没有做任何我认为的事情。
【问题讨论】:
-
多个问题.. C 中的字符串必须在双引号内,字符在单引号内。你不能使用
==比较字符串,使用strcmp() -
"results in errors" — 错误信息是什么意思?
-
@Haris,使用双引号修复了编译错误。我向它发送了“test”,但我认为如果没有触发语句。我尝试了“=”而不是“==”..编译错误。
-
@Joey,使用
strcmp()。如果字符串=或==将不起作用。
标签: c