Resultados da pesquisa a pedido "type-punning"
Digite puncionando uma estrutura em C e C ++ por meio de uma união
Eu compilei isso no gcc e no g ++ com pedante e não recebo um aviso em nenhum deles: #include <stdio.h> #include <stdlib.h> #include <string.h> struct a { struct a *next; int i; }; struct b { struct b *next; int i; }; struct c { int x, x2, ...
gcc: Como usar o __attribute ((__ may_alias__)) corretamente para evitar o aviso de "exclusão do ponteiro puncionado por tipo"
Eu tenho algum código que usa punção de tipo para evitar ter que chamar o membro de "objeto" construtor e destruidor, a menos que / até que seja realmente necessário usar o objet Funciona bem, mas no g ++ 4.4.3, recebo este temido aviso do ...
@Fix para remover o ponteiro com punção de tipo quebrará o aliasing estrito
Estou tentando corrigir dois avisos ao compilar um programa específico usando o GCC. Os avisos são: warning: o cancelamento da referência ao ponteiro puncionado por tipo quebrará as regras de alias estrito [-Wstrict-aliasing] e os dois ...
Buffers de memória compartilhada em C ++ sem violar regras estritas de alias
Eu estou lutando com a implementação de um buffer de memória compartilhada sem quebrar as regras de aliasing rigorosas do C99.Suponha que eu tenha algum códi...
Aliasing estrito de ponteiro: o acesso através de um ponteiro 'volátil' / referência é uma solução?
Na esteira deum problema específico [https://stackoverflow.com/questions/2980920/strict-pointer-aliasing-any-solution-for-a-specific-problem/2981505#2981505] , uma resposta automática e comentários, gostaria de entender se é uma solução adequada, ...
Punção de caracteres com segurança * para dobrar em C
Em um código abertoprograma que escrevi [http://honeypot.net/project/pgdbf], Estou lendo dados binários (gravados por outro programa) de um arquivo e produzindo ints, dobros e outros tipos de dados variados. Um dos desafios é que ele precisa ser ...
bits flutuantes e aliasing estrito
Estou tentando extrair os bits de um flutuador sem invocar um comportamento indefinido. Aqui está minha primeira tentativa: unsigned foo(float x) { unsigned* u = (unsigned*)&x; return *u; }Pelo que entendi, isso não garante que funcione devido a ...
Aliasing estrito do C ++ quando não estiver usando o ponteiro retornado pelo posicionamento new
Isso pode causar um comportamento indefinido? uint8_t storage[4]; // We assume storage is properly aligned here. int32_t* intPtr = new((void*)storage) int32_t(4); // I know this is ok: int32_t value1 = *intPtr; *intPtr = 5; // But can one of the ...
Reutilizando um buffer flutuante para dobras sem comportamento indefinido
Em uma função específica do C ++, por acaso tenho um ponteiro para um grande buffer de flutuadores que quero usar temporariamente para armazenar metade do número de duplas. Existe um método para usar esse buffer como espaço temporário para ...
Página 1 do 2