找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 1379|回复: 2

这个程序为什么这样运行不来呢?

[复制链接]
发表于 2009-10-31 02:10:33 | 显示全部楼层 |阅读模式 IP:江苏扬州
这个程序是我在静夜思的网站上拷的,当什么都不改的情况下放在vc++6.0中运行不来有五个错误,
把下面的自定义静态函数放main上面后错误减少,但还有,只有我把静态函数的代码替代main里面的调用函数时才正确运行
请问这是为什么呢?谢谢
#include <stdio.h>

main()
{
int a,b; /* 定义a,b两个整形变量用于输入两个整数 */
int *point_1,*point_2; /* 定义三个指针变量 */
scanf("%d,%d",&a,&b); /* 格式化输入a,b的值 */
point_1 = &a; /* 把指针变量point_1的值指向变量a的地址 */
point_2 = &b; /* 把指针变量point_2的值指向变量b的地址 */
compositor(point_1,point_2); /* 调用自定义的排序涵数,把a,b的地址传递给point_1和point_2 */
printf("%d,%d",a,b); /* 打印出a,b的值 */
}

static compositor(p1,p2)
int *p1,*p2; /* 定义形式参数p1,p2为指针变量 */
{
int temp; /* 建立临时存储变量 */
if (*p1<*p2) /* 如果*p1<p2,注意这里的*p1和*p2其实就是a和b */
{
temp = *p1; /* 利用变量temp用于临时存储*p1和就是a的值 */
*p1 = *p2; /* 将*p1的值也就是a的值换成*p2的值也就是b的值,等价于a=b */
*p2 = temp; /* 将*p2的值也就是temp的值等价于b=temp */
}
}
发表于 2009-10-31 02:10:34 | 显示全部楼层 IP:江苏扬州
#include <stdio.h>
#include <stdlib.h>

void compositor(int * p1, int * p2)
{
int temp;
if (*p1<*p2)
{
temp = *p1;
*p1 = *p2;
*p2 = temp;
}
}
int main()
{
int a,b;
int * point_1 = &a, * point_2 = &b;
scanf("%d %d",&a,&b);

compositor(point_1,point_2);
printf("%d,%d",a,b);

system("pause");
return 0;
}


// 问题出在你那个函数前面没有声明
// 有两个解决办法,或者在前面声明,或者将函数的定义写在 main 前面。
回复

使用道具 举报

发表于 2009-10-31 02:10:35 | 显示全部楼层 IP:江苏扬州
kai的程序我运行出来了,好象还是语法没有搞懂的问题 谢谢指导,我会继续努力学的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-29 17:31 , Processed in 0.161464 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表