| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 702 人关注过本帖
标题:[求助]程序编译通不过
只看楼主 加入收藏
hitlfy
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-9-8
收藏
 问题点数:0 回复次数:10 
[求助]程序编译通不过
我认为最基本的high-low=1就不对,这样mid会出现负数,一直减下去永远也不会有结果
/*请问大狭这个程序为什么在Turbo C2.0上编译通不过,而在VC++6.0就能通过*/
/*另外我还想问问如何在VC++6.0下对程序单步运行,以及查看每一不运行的结果以便查错*/
#include <stdio.h>
struct point
{
int x;
int y;
};
point MinMax(int A[],int low,int high)/*请问为什么显示语法错误Declaration syntax error*/
{
point p,p1,p2;
int mid;
if((high -low) == 1)
{
if(A[high] > A[low])
{
p.x = A[low];
p.y = A[high];
return p;
}
else
{
p.x = A[high];
p.y = A[low];
return p;
}
}
else
{
mid = (high - low)/2;
p1 = MinMax(A, low, mid);/*会永远减下去*//*mid=1,0,-1,-1,...*/
p2 = MinMax(A, mid+1, high);
if(p1.x > p2.x)
{
p.x = p2.x;
}
if(p1.x < p2.x)
{
p.x = p1.x;
}
if(p1.y > p2.y)
{
p.y = p1.y;
}
if(p1.y < p2.y)
{
p.y = p2.y;
}
return p;
}
}
main()
{
point p3;
int a[10]={1,23,24,1,6,23,34,2,54,6};
p3 = MinMax(a,2,5);/*实参给定2,5*/
printf("%d\n",p3.x);
printf("%d\n",p3.y);
}
搜索更多相关主题的帖子: 编译 
2006-12-29 21:49
yuyunliuhen
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:1435
专家分:0
注 册:2005-12-12
收藏
得分:0 
TC2。0 是一个纯 C 编译器,是不能够编译 C++ 的 。如果一定要用 TC 的话,请换用 TC3,但 TC3所支持的 C++不是标准C++
若是VC++6.0的话,可以按F9插入断点(insert/remove breakpoint),这样的话可以可以查看程序是如何样执行的。

[此贴子已经被作者于2006-12-29 22:39:00编辑过]


Go confidently in the  directions of your dreams,live the life you have imagined!Just do it!
It is no use learning without thinking!
2006-12-29 22:37
hitlfy
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-9-8
收藏
得分:0 
哦,这个我知道了,谢谢大侠,只要把程序中所有的point改为struct point,程序就能在TC2.0上通过编译。在VC++6.0上F9怎么用呀?TC2.0上用F7就可以单步执行,用Ctrl+F7就可查看运行中的变量值,相应的在VC++6.0上这功能怎么用呀?多谢大侠给予指点
2006-12-30 09:13
yuyunliuhen
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:1435
专家分:0
注 册:2005-12-12
收藏
得分:0 

光标的位置在哪,F9断点就插在哪。如果想看全过程,就在每一行插入一个断点,然后调试。


Go confidently in the  directions of your dreams,live the life you have imagined!Just do it!
It is no use learning without thinking!
2006-12-30 13:21
smartwind
Rank: 1
等 级:新手上路
威 望:1
帖 子:277
专家分:0
注 册:2006-11-13
收藏
得分:0 
VC++中用F11单步执行

2006-12-30 16:03
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
收藏
得分:0 
以下是引用yuyunliuhen在2006-12-30 13:21:04的发言:

光标的位置在哪,F9断点就插在哪。如果想看全过程,就在每一行插入一个断点,然后调试。

非也,那四个东西意思用明白就可以了
图标很明确那四个都是干什么的
不用每行都插也可以


嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-12-30 19:30
hitlfy
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-9-8
收藏
得分:0 
楼上的告诉我按F11,到是可以单步执行,但执行到一定程度再按的话,就会把用#include包含的库文件弄出来,弄的满屏幕都是;再有一点按F11,如何看单步执行时每步中变量的值
2006-12-31 07:56
hitlfy
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-9-8
收藏
得分:0 
楼上的告诉我用F9,我在程序的某一行按F9后,在该行左侧出现红点,但我用Ctrl+F5执行程序时这个红点没起任何作用,麻烦大侠能不能指点的具体点,谢谢
2006-12-31 07:56
踏魔狼
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:1322
专家分:33
注 册:2005-9-22
收藏
得分:0 
Ctrl+F5 非调试启动.
直接按F5.

=×&D o I p R e E n C g T l X&×=
2006-12-31 11:56
smartwind
Rank: 1
等 级:新手上路
威 望:1
帖 子:277
专家分:0
注 册:2006-11-13
收藏
得分:0 
以下是引用hitlfy在2006-12-31 7:56:15的发言:
楼上的告诉我按F11,到是可以单步执行,但执行到一定程度再按的话,就会把用#include包含的库文件弄出来,弄的满屏幕都是;再有一点按F11,如何看单步执行时每步中变量的值

那用F10好了,
F5:执行到下一断点处
F10:执行到下一行(不跟踪函数)
F11:单步执行
调试时鼠标放变量上就会看到当前值,
还可以点右键-〉增加监视(Add Watch)


2006-12-31 14:39
快速回复:[求助]程序编译通不过
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013726 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved