我正在尝试在Ubuntu 10.10上的Linux上使用solaris studio。
当我尝试构建以下代码时,
const char * names [] = {“Apple”,“Orange”,“Mango”};
我收到以下错误消息,
“无法使用地址来初始化打包结构(#pragma pack)的字段”
我没有使用#pragma pack(),甚至尝试使用#pragma pack(0)将其设置为默认值,还尝试使用#pragma align 64(名称)
仍然我得到同样的错误。
是什么原因。
谢谢
最佳答案
您使用的是哪个版本,以下程序和Linux上的Solaris Studio 12.2/Sun C 5.11都没有错误:
$ cat tst.c
int main(void)
{
const char *names[] = {"Apple", "Orange", "Mango"};
}
$ cc tst.c
$ echo $?
0
$ cc -V
cc: Sun C 5.11 Linux_i386 2010/08/13
usage: cc [ options ] files. Use 'cc -flags' for details
$
关于c - 错误: cannot use an address to initialize a field of a packed struct (#pragma pack),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9677241/