注册 登录
编程论坛 C++教室

数组的声明

笋尖兰 发布于 2008-11-27 12:04, 617 次点击
int ping(int x,int y,int z)
{
    extern char ch[];
    int sum=0;
    for(int i=x,j=z;i<=y;i++,j--)
        sum+=ch[i]*weishu(j);
    return sum;
}
int main()
{
    int shuzi[100];//最后的那个整型数组;
    int count1=0;//对shuzi进行记数;
    int a=0;//shuzi的下标设为a;
    cout<<"请输入一个字符串:";
    char ch[1000];
         。。。。。。。
}
ping 是子函数,其中要用到的main中的ch[],请问到底应该怎么声明啊?谢谢(我那样声明连接通不过)
ch[]是局部变量是吗?
4 回复
#2
newyj2008-11-27 12:47
可以在 ping这个函数的参数列表中 声明一个 char类型的指针
再 把 ch数组名 传给 ping 函数
#3
studentm2008-11-27 13:11
int func(char* ch)
{
}
int main()
{
    char ch[100];
    func(ch);
    ...
    return 0;
}
#4
p1s2008-11-27 19:19
extern不是这么用的吧……基本上是指文件以外的。
像这种用指针是最合适的
#5
hitcolder2008-11-27 23:36
以下是引用p1s在2008-11-27 19:19的发言:

extern不是这么用的吧……基本上是指文件以外的。
像这种用指针是最合适的



楼上正解,一般是在一个文件中声明所有的全局变量,然后在其他文件中用extern声明,防止编译上的错误。

楼主的用法感觉怪怪的,不知道是想怎么用。。在子函数中设置一个指针或者使用引用参数都可以把主函数中的CH传递给ping子函数就可以了。
1