什么**在C平均 [英] what does ** mean in C

查看:114
本文介绍了什么**在C平均的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是什么意思,当一个对象有2个星号开头?

  **变量


解决方案

有指针的指针。
有关详细信息,您可以检查:指针的指针

修改它可以很好的例子,对于动态分配多维数组:

我爱:

 的#include<&stdlib.h中GT;INT **阵列;
阵列=的malloc(NROWS * sizeof的为(int *));
如果(阵列== NULL)
{
    fprintf中(标准错误,内存不足的\\ n);
    退出或返回
}
对于(i = 0; I< NROWS;我++)
{
    数组[我] =的malloc(ncolumns *的sizeof(INT));
    如果(阵列[我] == NULL)
    {
        fprintf中(标准错误,内存不足的\\ n);
        退出或返回
    }
}

What does it mean when a object has 2 asterisks at the beginning?

**variable

解决方案

It is pointer to pointer. For more details you can check : Pointer to pointer

EDIT It can be good for example for dynamically allocating multidimensional arrays :

Like :

#include <stdlib.h>

int **array;
array = malloc(nrows * sizeof(int *));
if(array == NULL)
{
    fprintf(stderr, "out of memory\n");
    exit or return
}
for(i = 0; i < nrows; i++)
{
    array[i] = malloc(ncolumns * sizeof(int));
    if(array[i] == NULL)
    {
        fprintf(stderr, "out of memory\n");
        exit or return
    }
}

这篇关于什么**在C平均的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆