我该如何做到这一点:
*(int *)CMSG_DATA(hdr) = fd2pass;
没有GCC提出这个问题:
error: dereferencing type-punned pointer will break strict-aliasing rules
以与这些选项相兼容的方式:
-Wall -Werror -pedantic
我该如何做到这一点:
*(int *)CMSG_DATA(hdr) = fd2pass;
没有GCC提出这个问题:
error: dereferencing type-punned pointer will break strict-aliasing rules
以与这些选项相兼容的方式:
-Wall -Werror -pedantic
尝试将 -fno-strict-aliasing 添加到 gcc。
为了阐明严格别名话题,请查看此问题。
除非出了很大的问题,否则实际上没有出现别名错误 -- *(int *)CMSG_DATA(hdr) 所指代的对象并不是 hdr 的别名 -- 它已经超出了 hdr 的范围。警告是错误的。
你可以使用memcpy来解决它:
memcpy(CMSG_DATA(hdr), &fd2pass, sizeof(int));
不要使用-fno-strict-aliasing:这将禁用假定严格别名的优化;它可能会生成相当糟糕的代码。
有关技术细节,请参见glibc bug 16197。
For example, let s say I want to find a particular word or number in a file. The contents are in sorted order (obviously). Since I want to run a binary search on the file, it seems like a real waste ...
最好、最小、最快、开放的来源、C/C++ 3d 提供方(在3ds max模型的支持下),而不是通用公平市价,
Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...
I m trying to find the source of a bug I have found in an open-source application. I have managed to get a build up and running on my Windows machine, but I m having trouble finding the spot in the ...
I wrote below code to readin line by line from stdin ex. city=Boston;city=New York;city=Chicago and then split each line by ; delimiter and print each record. Then in yet another loop I try to ...
I was wondering if there were any good free graphics libraries for C that are easy to use? It s for plotting 2d and 3d graphs and then saving to a file. It s on a Linux system and there s no gnuplot ...
Is there anything other than DDD that will draw diagrams of my data structures like DDD does that runs on Linux? ddd is okay and runs, just kind of has an old klunky feeling to it, just wanted to ...
Please note that this is not homework and i did search before starting this new thread. I got Store an int in a char array? I was looking for an answer but didn t get any satisfactory answer in the ...