[Error] ISO C++ forbids comparison between pointer and integer

错误代码:

if(a[i]=="G"&&b[i]!="C")
    return false; 

改正后的代码:

if(a[i]=='G'&&b[i]!='C')
    return false;

错误原因:两种不同类型的数据不能做比较,a[i]表示的是一个字符,“C”表示的是一个字符串的首地址,所以应该把“C”改为‘C’

原文地址:https://www.cnblogs.com/chay/p/10240352.html

时间: 2024-10-07 15:29:02

[Error] ISO C++ forbids comparison between pointer and integer的相关文章

ISO C++ forbids comparison between pointer and integer

在g++下编译出现ISO C++ forbids comparison between pointer and integer错误 经过检查发现错误如下: while (cin.get() !="\n") continue; 将其修改为: while (cin.get() !='\n') continue; 在ISO C++中,"\n"常量字符串比较时是使用字符串的地址,所以为char *: '\n'字符,是转换为int常量的,可以与cin.get()比较 所以出现

ISO C++ forbids declaration of * with no type

error: ISO C++ forbids declaration of 'XXXX' with no type   出现这个错误,一般是由于两个CPP相互都相互包含了对方的头文件造成的,比如: 当mainwindow.cpp.configdialog.cpp两个文件,分别包含了对方的头文件,并且分别又在自己的类中生命了对象,即: mainwindow.cpp #include "configdialog.h" class MainWindow { ConfigDialog *con

ISO C90 forbids mixed declarations and code 警告

编译的时候经常会遇到   ISO C90 forbids mixed declarations and code 警告 百度了一下,知道是如下原因 : 变量定义之前任何一条非变量定义的语句(注意:语句是会带分号的)都会引起这个警告! 解决方法: 将非变量的定义移到变量定义之后 即可 在内核中还需要将   printk的打印放在变量定义之后

golang panic: runtime error: invalid memory address or nil pointer dereference [

今天做消息队列持久化存储服务过程中,golang操作mysql 报错: panic: runtime error: invalid memory address or nil pointer dereference [ 经过反复查找,原来是变量定义问题 做个记录,以后再有问题可以做个参考,原始代码: var Db *sql.DB func init() {     Db, err := sql.Open("mysql", "root:[email protected]/tes

warning: ISO C++ forbids converting a string constant to 'char*'

第1种字符串赋值方式: char * fileName="./2017-09-02-10-34-10.xml";//这一种字符串赋值方式已经被ISO禁止了 第2种字符串赋值方式: char str[] ="./2017-09-02-10-34-10.xml"; char *fileName=str; 第3种字符串赋值方式: char fileName[] ={"./2017-09-02-10-34-10.xml"};//有无大括号都可以 warn

warning:ISO C90 forbids mixed declarations and code

变量定义之前不论什么一条非变量定义的语句(重视:语句是会带分号的)都会引起这个警告! 将非变量的定义移到变量定义之后 就可以,也就是变量的声明 必须在运行语句之前.

Linux学习: 使用gdb和gdbserver进行远程调试

1.引言 在日常程序开发中不免遇到类似空指针操作导致程序崩溃的问题,所以需要一定的手段去定位bug,而断点调试是普遍使用的技巧,比如Windows中用VC++的debug模式进单步运行.断点调试等,有很友好的图形化操作界面,而在Linux中使用的是没有图形界面的调试工具-GDB(听说eclipse支持GUI调试,暂未尝试),所以需要通过指令进行操作,下面逐步介绍gdb调试环境的搭建和使用方法. 2.gdb调试环境搭建 (1)下载gdb工具源码:http://www.gnu.org/softwar

Linux学习: 使用gdb和gdbserver进行调试

1.引言 在日常程序开发中不免遇到类似空指针操作导致程序崩溃的问题,所以需要一定的手段去定位bug,而断点调试是普遍使用的技巧,比如Windows中用VC++的debug模式进单步运行.断点调试等,有很友好的图形化操作界面,而在Linux中使用的是没有图形界面的调试工具-GDB(听说eclipse支持GUI调试,暂未尝试),所以需要通过指令进行操作,下面逐步介绍gdb调试环境的搭建和使用方法. 2.gdb调试环境搭建 (1)下载gdb工具源码:http://www.gnu.org/softwar

转:QT 的点点滴滴 错误总结

转自:http://blog.csdn.net/lbsljn/archive/2009/12/29/5099590.aspx MinGw + CodeBlock + QT4.5 类定义后面要加";" 函数的实现部分,如果定义部分有void,则实现部分不能少; 检查include文件有无少; error: request for member `show' in `((MainWindow*)this)->MainWindow::rightform', which is of no