首页 > 解决方案 > 二维字符数组打印错误结果

问题描述

提前感谢您对董事会的所有令人难以置信的回应。

我正在尝试打印二维数组以显示在那里排列的字符,但我只得到:

4 6
4 6
4 6
4 6
4 6
4 6

任何想法我做错了什么?数组大小和字符串出来就好了……</p>

源代码:

#include <stdio.h>

char list_ch[][2] = {
    '1', 'a',
    '2', 'b',
    '3', 'c',
    '4', 'd',
    '5', 'e',
    '6', 'f' };

int i, j;

int main() {

    printf("List_ch size:%d\n", sizeof list_ch);

    for (i = 0; i < 6; i++) {
        printf("\n");
        for (j = 0; j < 2; j++)
            printf("%c ", list_ch[i, j]);
    }
    printf("\n");

    printf("This is the string:\n");
    printf("%s", list_ch);
    return 0;
}

标签: arraysprinting

解决方案


打印命令应更改为

printf("%c ", list_ch[i][j]);

推荐阅读