相关疑难解决方法(0)

在C中传递数组指针

所以我有一些看起来像这样的代码:

int a[10];
a = arrayGen(a,9);
Run Code Online (Sandbox Code Playgroud)

并且arrayGen函数如下所示:

int* arrayGen(int arrAddr[], int maxNum)
{
    int counter=0;
    while(arrAddr[counter] != '\0') {
        arrAddr[counter] = gen(maxNum);
        counter++;
    }
    return arrAddr;
}
Run Code Online (Sandbox Code Playgroud)

现在compilier告诉我"警告:传递'arrayGen'的参数1从指针生成整数而没有强制转换"

我的想法是我传递'a',一个指向[0]的指针,然后由于数组已经创建,我可以只填写[n]的值,直到我a [n] =='\ 0'.我认为我的错误是arrayGen被写入接收数组,而不是指向一个数组.如果这是真的我不知道如何继续,我会写地址值,直到一个地址的内容是'\ 0'?

c arrays pointers

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

arrays ×1

c ×1

pointers ×1