Articles of struct

Estruturas podem conter campos de tipos de referência

Estruturas podem conter campos de tipos de referência? E se eles podem isso é uma prática ruim?

Inicializar definição de estrutura aninhada em Golang

Como você inicializa a seguinte estrutura? type Sender struct { BankCode string Name string Contact struct { Name string Phone string } } Eu tentei: s := &Sender{ BankCode: “BC”, Name: “NAME”, Contact { Name: “NAME”, Phone: “PHONE”, }, } Não funcionou: mixture of field:value and value initializers undefined: Contact Eu tentei: s := &Sender{ […]

O que é ‘declaração direta’ e a diferença entre ‘typedef struct X’ e ‘struct X’?

Eu sou um iniciante em programação C e sei a diferença entre declaração de tipo de struct e typedef struct declaration. Me deparei para saber uma resposta dizendo que se definirmos uma estrutura como: typedef struct { some members; }struct_name; Em seguida, será como fornecer um alias a uma estrutura anônima (pois não está tendo […]

Estruturas C opacas: como devem ser declaradas?

Eu vi os dois estilos seguintes de declarar tipos opacos em APIs C. Existe alguma vantagem clara em usar um estilo sobre o outro? Opção 1 // foo.h typedef struct foo * fooRef; void doStuff(fooRef f); // foo.c struct foo { int x; int y; }; opção 2 // foo.h typedef struct _foo foo; void […]

Inicializando uma estrutura para 0

Se eu tenho uma estrutura como esta: typedef struct { unsigned char c1; unsigned char c2; } myStruct; Qual seria a maneira mais fácil de inicializar essa estrutura para 0? O seguinte seria suficiente? myStruct _m1 = {0}; ou eu precisaria explicitamente iniciar cada membro para 0? myStruct _m2 = {0,0};

Passando struct para funcionar

Eu sou um novo programador C e queria saber como posso passar uma struct para uma function. Estou recebendo um erro e não consigo descobrir a syntax correta para isso. Aqui está o código para isso …. Estrutura: struct student{ char firstname[30]; char surname[30]; }; struct student person; Ligar: addStudent(person); Protótipo: void addStudent(struct student); e […]

Estrutura de matrizes vs matriz de estruturas em CUDA

De alguns comentários que eu li aqui, por algum motivo, é preferível ter Structure of Arrays ( SoA ) sobre Array of Structures ( AoS ) para implementações paralelas como CUDA? Se isso é verdade, alguém pode explicar por quê? Desde já, obrigado!

Matriz de estruturas que substituem valores acima de si

Ok, então eu tenho o código abaixo e estou apenas puxando várias coisas de um arquivo e inserindo-os em uma matriz de estruturas, “aparentemente” funciona inicialmente, mas quando vou para imprimi-lo depois que é feito com o arquivo parecia ter substituído todos os cursos e nomes com o último vale, estranhamente isso não acontece com […]

Estrutura de Tamanho Variável C ++

Esta é a melhor maneira de fazer uma estrutura de tamanho variável em C ++? Eu não quero usar vetor porque o comprimento não muda após a boot. struct Packet { unsigned int bytelength; unsigned int data[]; }; Packet* CreatePacket(unsigned int length) { Packet *output = (Packet*) malloc((length+1)*sizeof(unsigned int)); output->bytelength = length; return output; } […]

Como faço para verificar se uma variável é de um determinado tipo (compare dois tipos) em C?

Em C (não em C ++ / C #) como posso verificar se uma variável é de um certo tipo? Por exemplo, algo como isto: double doubleVar; if( typeof(doubleVar) == double ) { printf(“doubleVar is of type double!”); } Ou mais geral: Como faço para comparar dois tipos para que compare(double1,double2) seja avaliado como true […]