如何解决C如何解析char数组中的int和char?
我想解析 char
数组中的 int
和 char
并在代码中使用它们。例如,char 数组是 a3。我收到警告:“指针和整数之间的比较。”
我该如何解决这个问题?
bool isValid(char piece[1]){
if((piece[0] != "a") || (piece[0] != "b") || (piece[0] != "c") || (piece[0] != "d") || (piece[0] != "e") || (piece[0] != "f") || (piece[0] != "g") || (piece[1] <= 0) || (piece[1] > 7))
return false;
else
return true;
解决方法
char
文字由单引号 ('
) 而非双引号 ("
) 表示,因此您应该检查 piece[0] != 'a'
等
对于像这样的表达式的初学者
(piece[0] != "a")
左操作数的类型为 char
,而右操作数的类型为 char *
,因为 "a"
是字符串文字。看来您要比较两个字符。因此,不要使用字符串文字,而是使用像
(piece[0] != 'a')
其次,if语句中的条件
if((piece[0] != 'a') || (piece[0] != 'b') || and so on...
不正确。您需要使用逻辑 AND 运算符而不是像
这样的逻辑 OR 运算符if((piece[0] != 'a') && (piece[0] != 'b') && and so on...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。