c - 将多维数组传递给函数并编辑值

标签 c arrays

<分区>

我正在创建一个简单的单词搜索生成器,但在通过函数传递二维数组并编辑其中的值时遇到问题。我在 main 中声明了我的数组:

char tableValues[xsize-1][ysize-1];

我在 main 中用 - 填充数组中的每个点,然后将其传递给一个用随机字母填充数组并返回的函数。

void fillTable(char *tableValues){
    for ( int i = 0 ; i < xsize ; i++ ){
        for ( int j = 0 ; j < ysize ; j++ ){
            if ( tableValues[i][j]=='-')
                tableValues[i][j] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"[rand () % 26];
        }
    }
}

我的问题是在“tableValues[i][j]”部分标记了一个错误,我不确定我还能如何使用指针编辑数组中的各个点。任何帮助将不胜感激,谢谢

我调用我的函数为

fillTable((char *)tableValues);

最佳答案

尝试 this ,

void fillTable(char *tableValues){
for ( int i = 0 ; i < xsize ; i++ ){
    for ( int j = 0 ; j < ysize ; j++ ){
        if ( *((tableValues +i*(xsize-1))+j)=='-')
            *((tableValues+i*(xsize-1))+j) = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"[rand () % 26];
    }
}
}

关于c - 将多维数组传递给函数并编辑值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29947235/

相关文章:

javascript - 如何比较两个大对象数组的身份

c - CVE-2015-0235 是如何触发和利用的?

c - TCP客户端/服务器发送/接收文件

c++ - C 中的 Windows 应用程序

c - 混合 16 位线性 PCM 流并避免剪辑/溢出

c - GCC 因 fatal error 终止操作

javascript - 如何返回对象中的属性并按顺序排列它们?

C:输出由问号组成?

c# - 超出范围异常二维数组到列表类型 Int

java - jackson :解码数组的数组