我不明白错误在哪里。 为什么这个错误信息: 从不兼容的指针类型初始化。 朋友,请帮帮我。
const struct _displayout_default
{
const char* length;
const char** buf;
}DisplayOut_DEFAULT[2] =
{
{
"02",
(const char*[]){
"01",
"02",
"03",
"04"
}
},
{
"02",
(const char*[]){
"01",
"02",
"03",
"04"
}
}
};
MPLAB®C编译器 对于PIC32 MCU
C标准信息 美国国家信息系统标准 - 编程语言 - C. 美国国家标准协会(ANSI),11 West 42nd。街,纽约, 纽约,10036。
海湾合作委员会文件 http://gcc.gnu.org/onlinedocs/ http://sourceware.org/binutils/
编译器选项: -g -mlong-calls -DNDEBUG -Os
答案 0 :(得分:3)
编辑(旧答案消失)
不幸的是,我无法使用相同的编译器和相同的选项重现该消息:
T:\>"c:\Program Files (x86)\Microchip\mplabc32\v2.01\bin\pic32-gcc.exe" -g -mlong-calls -DNDEBUG -Os test.c
没有错误。
与pic32mx-gcc-4.5.1.exe
同样 - 没有错误。
来源
const struct _displayout_default
{
const char* length;
const char** buf;
}DisplayOut_DEFAULT[2] =
{
{
"02",
(const char*[]){
"01",
"02",
"03",
"04"
}
},
{
"02",
(const char*[]){
"01",
"02",
"03",
"04"
}
}
};
int main(int argc, const char *argv[])
{
return 0;
}
编译器版本:
版本:
T:\>"c:\Program Files (x86)\Microchip\mplabc32\v2.01\bin\pic32-gcc.exe" -v
pic32-gcc.exe: 2: No such file or directory
Using built-in specs.
COLLECT_GCC=c:\Program Files (x86)\Microchip\mplabc32\v2.01\bin\pic32-gcc.exe
COLLECT_LTO_WRAPPER=c:/program files
(x86)/microchip/mplabc32/v2.01/bin/../pic32mx/bin/gcc/pic32mx/4.5.1/lto-wrapper.exeTarget:
pic32mxConfigured with: ../../src45x/gcc/configure --build=i386-pc-linux-gnu
--host=i586-mingw32msvc --target=pic32mx --disable-threads --disable-libmudflap
--disable-libssp --disable-libstdcxx-pch --disable-hosted-libstdcxx
--with-arch=pic32mx --enable-sgxx-sde-multilibs --disable-threads --with-gnu-as
--with-gnu-ld --disable-sim --disable-bootstrap --enable-obsolete
--disable-__cxa_atexit --disable-libfortran --enable-languages=c
--disable-shared --with-newlib --disable-nls
--prefix=/home/c11067/work/C32/builds/pic32-microchip-release-2.01-freeze-20110726/pic32-tools
--disable-libgomp --without-headers --disable-libffi --enable-gofast
--enable-poison-system-directories --program-prefix=pic32-
--libexecdir=/home/c11067/work/C32/builds/pic32-microchip-release-2.01-freeze-20110726/pic32-tools/pic32mx/bin
--with-dwarf2 --with-host-libstdcxx='-static-libgcc
-Wl,-Bstatic,-lstdc++,-Bdynamic -lm'
--with-libelf=/home/c11067/work/C32/builds/pic32-microchip-release-2.01-freeze-20110726/canadian-cross-build/mingw32-libs
--enable-lto
--with-gmp=/home/c11067/work/C32/builds/pic32-microchip-release-2.01-freeze-20110726/canadian-cross-build/mingw32-libs
--with-ppl=/home/c11067/work/C32/builds/pic32-microchip-release-2.01-freeze-20110726/canadian-cross-build/mingw32-libs
--with-cloog=/home/c11067/work/C32/builds/pic32-microchip-release-2.01-freeze-20110726/canadian-cross-build/mingw32-libs
--with-zlib=/home/c11067/work/C32/builds/pic32-microchip-release-2.01-freeze-20110726/canadian-cross-build/mingw32-libs
--with-bugurl=http://www.microchip.com/supportThread model: singlegcc version
4.5.1 MPLAB C Compiler for PIC32 MCUs v2.01-20110816 (Microchip Technology)
答案 1 :(得分:2)
您的代码没有任何问题,并且它不会对gcc 4.4.5或clang 1.1发出任何警告。