GCC在使用以下代码时给我一个“从不兼容指针类型初始化”的警告。
#include "mnist.h"
#include <stdio.h>
int main(void)
{
double** inputLayer = train_image;
}train_image是一个由mnist头文件提供的二维数组,根据autor,它是这样的
发布于 2019-12-09 17:40:53
数组不是指向指针的指针。
int main()
{
double *pointer = &train_image[0][0];
double **inputLayer = &pointer;
}发布于 2019-12-09 17:57:19
如果你有这样的数组
double train_image[60000][784];然后,指向其第一个元素的指针应该声明如下
double ( *inputLayer )[784] = train_image;也就是说,用作初始化器的表达式train_image具有double ( * )[784]类型。
如果需要,则可以使用以下指针声明将二维数组重新解释为一维数组。
double *inputLayer = ( double * )train_image;https://stackoverflow.com/questions/59253791
复制相似问题