编译器BUG?(DEV-CPP && VC6.0) !=1

f27ny105t5123 2014-07-20 12:39:12
同一段代码,同样的输入

vc6.0编译结果正确,dev-cpp和codeblocks结果错误

不知道有没有人遇到过这种问题,会不会是编译器问题呢。。。。

最近在看《C专家编程》,书写的还不错,其中提到了C语言自身特性造成的一些“BUG”,所以…

现在总觉着是编译器或者C语言自身问题,求拯救

下面贴代码,本来是想做PEking University的OJ 1068题的,有兴趣的可以看下

http://poj.org/problem?id=1068

我的代码现在实现:处理输入的数据,并输出相应的括号字符串

题目要求:

1、第一行输入一个整数,代表下面要输入的数据组数

2、每组数据有两行组成,第一行代表该组数据的个数,第二行输入该组数据

3、每组数据第X个数字代表第X个右括号前左括号的个数(题目就是括号匹配)

===========分割==========================

#include <stdio.h>
int main()
{
char s[10][40],n;
char i,j;
int dat_p[10][21],dat_w[10][21];

scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",dat_p[i]+20);
for(j=0;j<dat_p[i][20];j++)
scanf("%d",dat_p[i]+j);
}

for(i=0;i<n;i++)
{
for(j=0;j<dat_p[i][20];j++)
s[i][dat_p[i][j]+j]=')';
s[i][ dat_p[i][dat_p[i][20]-1] + dat_p[i][20] ]='\0';
for(j=0;s[i][j];j++)
if(s[i][j]!=')')
s[i][j]='(';
}

for(i=0;i<n;i++)
{
printf("%s",s[i]);
}
return 0;
}
...全文
105 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
f27ny105t5123 2014-07-20
  • 打赏
  • 举报
回复
现在不光要考虑自己代码的正确与否,还有考虑编译器可能出现的问题,心好累
FightForProgrammer 2014-07-20
  • 打赏
  • 举报
回复
不要想太多。毕竟人家是专家。
f27ny105t5123 2014-07-20
  • 打赏
  • 举报
回复
引用 4 楼 angel_su 的回复:
估计是数组没初始化导致,有问题要调试代码找出原因,不是换编译器...
谢谢……是数组没初始化造成的……
f27ny105t5123 2014-07-20
  • 打赏
  • 举报
回复
引用 4 楼 angel_su 的回复:
估计是数组没初始化导致,有问题要调试代码找出原因,不是换编译器...
看看dev-cpp怎么调试去。。。
angel_su 2014-07-20
  • 打赏
  • 举报
回复
估计是数组没初始化导致,有问题要调试代码找出原因,不是换编译器...
f27ny105t5123 2014-07-20
  • 打赏
  • 举报
回复
引用 2 楼 FightForProgrammer 的回复:
不要想太多。毕竟人家是专家。
可是现在不同编译器结果不一样 好纠结啊

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧