LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: uci

一个C语言程序问题

[复制链接]
发表于 2003-12-10 16:30:40 | 显示全部楼层

数组可以用变量声明吗?

数组可以用变量声明吗?Match match[n]将n改成常数试试
发表于 2003-12-10 16:40:14 | 显示全部楼层
最初由 uci 发表
回答pupilzeng:
但是我估计这么写还是有错误.

先别估计,先试一下,出错了的话,把错误帖出来再说。
 楼主| 发表于 2003-12-10 19:12:23 | 显示全部楼层
pupilzeng:
先别估计,先试一下,出错了的话,把错误帖出来再说。

回答pupilzeng:
试了,一样的错误.抱歉,家里不能上网,我也记不清了,所以错误没法贴出来!

shzj:
数组可以用变量声明吗?Match match[n]将n改成常数试试

回答shzj:
昨天我已经把程序改了,编译也通过了.问题是在这一行上,但我是把Match match[] 改为Match *match.
数组不能用变量声明,但这里的match[]是可以在主函数定义的,如match[3],然后调用函数compute(match,m,3).
发表于 2003-12-10 21:17:42 | 显示全部楼层

  1. #include <stdlib.h>

  2. typedef struct {
  3. int a;
  4. } Match;

  5. struct SchoolReport {
  6. int data;
  7. SchoolReport *next;
  8. };
  9. struct SchoolReport *compute(Match match[],int m,int n)
  10. {
  11. }

  12. int main(int argc, char *argv[])
  13. {
  14.   Match* math;
  15.   compute(math, 1, 2);
  16.   system("PAUSE");       
  17.   return 0;
  18. }
复制代码

$gcc -v
gcc version 3.2 (mingw special 20020817-1)
编译通过。
我不明白你的究竟是错在哪里.
发表于 2003-12-10 21:55:00 | 显示全部楼层
你说的“错”是指什么样的错?

并且最好把这个程序要做什么告诉大家。
 楼主| 发表于 2003-12-12 19:28:16 | 显示全部楼层
pupilzeng:  
源码:--------------------------------------------------------------------------------
#include <stdlib.h>

typedef struct {
int a;
} Match;

struct SchoolReport {
int data;
SchoolReport *next;
};
struct SchoolReport *compute(Match match[],int m,int n)
{
}

int main(int argc, char *argv[])
{
  Match* math;
  compute(math, 1, 2);
  system("AUSE");       
  return 0;
}
--------------------------------------------------------------------------------

$gcc -v
gcc version 3.2 (mingw special 20020817-1)
编译通过。
我不明白你的究竟是错在哪里.

回答 pupilzeng :
我的C语言学得刚入门,请各位兄弟多多指教.有个疑问:pupilzeng兄的程序中struct SchoolReport *compute(Match match[],int m,int n)的参数Match是一个数组,而在主程序中用的不是数组.我想我的程序就是这个问题:用数组做参数,在实参中调用时出了问题.
发表于 2003-12-12 19:32:31 | 显示全部楼层
在参数中使用数组跟指针是一样的。即使传递的是一个数组也会转化为指针。
 楼主| 发表于 2003-12-14 15:15:42 | 显示全部楼层
pupilzeng:
在参数中使用数组跟指针是一样的。即使传递的是一个数组也会转化为指针。

回答pupilzeng:
谢谢pupilzeng兄弟,我知道我错在哪了。多谢指教!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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