首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在分配给标头给定数组时,从不兼容指针类型警告中初始化

在分配给标头给定数组时,从不兼容指针类型警告中初始化
EN

Stack Overflow用户
提问于 2019-12-09 17:25:03
回答 2查看 118关注 0票数 0

GCC在使用以下代码时给我一个“从不兼容指针类型初始化”的警告。

代码语言:javascript
复制
 #include "mnist.h"
 #include <stdio.h>

 int main(void)
 {

    double** inputLayer = train_image; 

}

train_image是一个由mnist头文件提供的二维数组,根据autor,它是这样的

  • 列车图像: train_image60000 (类型:双,标准化,扁平);
EN

回答 2

Stack Overflow用户

发布于 2019-12-09 17:40:53

数组不是指向指针的指针。

代码语言:javascript
复制
int main()
{
    double *pointer = &train_image[0][0];
    double **inputLayer = &pointer; 
}
票数 0
EN

Stack Overflow用户

发布于 2019-12-09 17:57:19

如果你有这样的数组

代码语言:javascript
复制
double train_image[60000][784];

然后,指向其第一个元素的指针应该声明如下

代码语言:javascript
复制
double ( *inputLayer )[784] = train_image;

也就是说,用作初始化器的表达式train_image具有double ( * )[784]类型。

如果需要,则可以使用以下指针声明将二维数组重新解释为一维数组。

代码语言:javascript
复制
double *inputLayer = ( double * )train_image;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59253791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档