为什么“传递不兼容的指针类型的参数”警告

时间:2019-03-18 12:13:39

标签: c gcc warnings

#include <stdio.h>

typedef float FloatArray[5];

static void doSomething(const FloatArray* i_data){
  (void)i_data;
}


int main(void){
  FloatArray fa = {1,2,4,5,6};
  doSomething(&fa);
  return 0;
}

我收到以下警告,但我不明白为什么

  

从不兼容的指针类型传递'doSomething'的参数0

如果我从函数参数中删除const,则警告消失。

gcc用

调用
  

-c -std = c99 -Wall -Wextra -Wfloat-conversion -Wenum-compare -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Winline -Wnested-externs -pedantic -mantup -mfpu =霓虹灯-mfloat-abi = hard

0 个答案:

没有答案