关闭

c语言二维数组初始化的方式

标签: c语言二维数组mallocsizeof
108人阅读 评论(0) 收藏 举报
分类:
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int **arr;
    int m=3,n=4,i,j;
    arr = (int **)malloc(sizeof(int*)*m);
    for(i=0; i<m; i++)
        arr[i] = (int *)malloc(sizeof(int)*n);

    for(i=0; i<m; i++)
        for(j=0; j<n; j++)
            arr[i][j] = i*10+j;

    for(i=0; i<m; i++)
    {
        for(j=0; j<n; j++)
        {
            printf("%d ",arr[i][j]);
        }
        printf("\n");
    }

    for(i=0; i<m; i++)
        free(arr[i]);

    free(arr);
    return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int m=3,n=4,i,j;
    int *storage;
    int **matrix;
    storage = (int *)malloc(sizeof(int) * m*n);
    matrix = (int **)malloc(sizeof(int *) * m);
    for(i=0; i<m; i++)
        matrix[i] = &storage[i*n];

    for(i=0; i<m; i++)
        for(j=0; j<n; j++)
            matrix[i][j] = i*10+j;

    for(i=0; i<m; i++)
    {
        for(j=0; j<n; j++)
            printf("%d ", matrix[i][j]);
        printf("\n");
    }

    free(storage);
    free(matrix);
    return 0;
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:24643次
    • 积分:838
    • 等级:
    • 排名:千里之外
    • 原创:60篇
    • 转载:6篇
    • 译文:0篇
    • 评论:7条
    文章分类
    最新评论