codeblocks编的C++程序可以编译,但是运行什么都不显示,回车就退出了

main函数里初始化棋盘是这样写的

for(i=0; i<=N; i++)
{
    for(j=0; j<=N; j++)
    {
         qipan.name[i][j]=0;
    }
}

这回造成数组访问越界。应该写作i<N和j<N。

追问

运行是可以了,不过到下棋那一步又出现问题了,能帮忙改一下吗?

追答

Qipan::win()函数中“判断右到左斜方向是否有5个”的三重循环里,最内层循环写错为“k=5”了,应该是"k<5"。
还有output函数,在没有人赢棋的时候会返回未赋值的win。建议去掉第二个参数win,(即int output(int count[8]))然后第一行改为int i,j, win=1;其余不动。
还有 你win函数的整体逻辑有问题,四种情形顺序判断并覆盖前一种情形的output返回值,最终等效于只返回最后一种情形的win值。但实际上应该是一旦有一个情形win是0就返回0。这个你可以自己改一下。

温馨提示:内容为网友见解,仅供参考
无其他回答

codeblocks编的C++程序可以编译,但是运行什么都不显示,回车就退出了
main函数里初始化棋盘是这样写的 for(i=0; i<=N; i++){ for(j=0; j<=N; j++) { qipan.name[i][j]=0; }}这回造成数组访问越界。应该写作i<N和j<N。

codeblocks在运行时已经没有编译错误,但是运行不起来,老是停止工作,编 ...
从这个过程来讲,compiler编译器不知道,即缺失;手动添加就可以了。如果编译没问题 但是一运行 就会自动弹出 .exe已经停止工作 也没显示代码有错误之类 我是用CodeBlocks 运行的 运行结果如下:Compiling: F:\\C++\\1\\1.cppLinking console executable: F:\\C++\\1\\1.exeProcess terminated with ...

为什么codeblocks进去之后 编译C++语言时候 总是什么都没有做?怎么可以...
codeblock只是个IDE,里面可以集成各种编译工具,缺省可能安装了Mingw(GNU工具在Windows上的一种移植),事实上编译C++源程序的时候,IDE会调用GCC(或者其他编译工具,比如VS studio系列...)来做编译连接的动作 你可以从下面的build log窗口看到编译的动作,编译和链接 ...

...的C++代码有什么问题,我再codeblocks上编译没问题但是运行不了...
Segmentation Fault 一般是数组越界访问造成的。你的代码中有一个二重循环,使用的计数器是一样的,这会带来混乱。另外这根本就是C代码嘛。。。还有,pchar2[i]=&a[i];这可是非常危险的啊,你真的知道你在干什么吗。就是这里发生了数组越界。请自己好好检查代码。

...电脑上安装c++或是code::blocks都会在编译没有错误报告,或是没有...
你生成的是Win32 Console Application工程吧?那是在DOS界面执行的程序。

为什么我的c++编译运行时有错误啊!
这种错误的原因,一般是因为被调用函数的形参对象应该是数组名,而不应该是数组。解决方法:一对花括号一对的找,肯定少了一个。注意:不要直接点击”编译并且运行”,而是应该点击”编译”按钮,这样可以保证警告不会被忽略,一些警告是非常有用的。有多个错误,要先处理最前面的错误,因为后面的错误可能...

电脑中CodeBlocks无法运行的解决方法
3、c和c++编译器的属性设置默认是在安装目录的bin文件下,而默认的路径是没有这些文件的,所以我们要手动进行设置。4、设置完后如下面所示,保存设置后在进行编译就可以了。电脑中CodeBlocks无法运行的解决方法就为大家介绍到这里了。若是你也遇到同样问题的话,不妨按照小编的方法操作看看。

C++代码为什么在VC++6.0中无法运行,但在Codeblocks中可以运行
max好像是系统已经定义了。你把max改成my_max看看 而且你也没有声明在使用。你要么把max放前面定义。要么在main函数前面加上 int max(int ,int);因为程序时按顺序执行的, 你这样把max的定义放main后面,而且在main前面也没有声明,导致编译器看不到。

求教大神我用codeblocks写了一个c++程序但是关的时候codeblock突然崩了...
在配置文件中,没改东西。好好看看,也可能你没重新编译。写完代码习惯性Ctrl+Shift+B编译一下。不这样有的时候,他不会识别

codeblocks运行c++程序出现问题
正常运行下方应该提示:mingw32-g++.exe -Wall -fexceptions -g -std=c++11(标准可选) -c [一段路径] -o obj\\Debug\\main.o mingw32-g++.exe -o [一段路径] obj\\Debug\\main.o -lwsock32 你可能是没有安装对应的MinGW,建议你去官网找到“codeblocks-16.01mingw-setup.exe”重新安装...

相似回答