Perguntas com a marcação «c»

C é uma linguagem de programação de uso geral usada para programação do sistema (SO e incorporado), bibliotecas, jogos e plataformas cruzadas. Essa tag deve ser usada com perguntas gerais sobre o idioma C, conforme definido na norma ISO 9899 (a versão mais recente, 9899: 2018, exceto quando especificado em contrário - também tag as solicitações específicas da versão com c89, c99, c11, etc.). C é diferente de C ++ e não deve ser combinado com a tag C ++, sem um motivo racional.



12
Como converter uma string para inteiro em C?
Estou tentando descobrir se existe uma maneira alternativa de converter seqüência de caracteres para número inteiro em c. Costumo padronizar o seguinte no meu código. char s[] = "45"; int num = atoi(s); Então, existe uma maneira melhor ou outra?
260 c  string  atoi 

12
Uso do operador de seta (->) em C
Estou lendo um livro chamado "Ensine-se C em 21 dias" (eu já aprendi Java e C #, por isso estou me movendo em um ritmo muito mais rápido). Eu estava lendo o capítulo sobre ponteiros e o operador-> (seta) surgiu sem explicação. Eu acho que é usado para chamar membros …
257 c  pointers  syntax 

3
Por que malloc + memset é mais lento que calloc?
Sabe-se que callocé diferente do mallocque inicializa a memória alocada. Com calloc, a memória é definida como zero. Com malloc, a memória não é limpa. Assim, no trabalho diário, eu considero calloccomo malloc+ memset. Aliás, por diversão, escrevi o seguinte código para uma referência. O resultado é confuso. Código 1: …
256 c  malloc 

10
Usando o GCC para produzir montagem legível?
Eu queria saber como usar o GCC no meu arquivo de origem C para despejar uma versão mnemônica do código da máquina para que eu pudesse ver em que meu código estava sendo compilado. Você pode fazer isso com Java, mas não consegui encontrar uma maneira com o GCC. Estou …
256 c  gcc  assembly 

15
Objetivo das uniões em C e C ++
Eu já usei sindicatos confortavelmente; hoje fiquei alarmado quando li este post e soube que esse código union ARGB { uint32_t colour; struct componentsTag { uint8_t b; uint8_t g; uint8_t r; uint8_t a; } components; } pixel; pixel.colour = 0xff040201; // ARGB::colour is the active member from now on // …
254 c++  c  unions  type-punning 

11
Por que você precisa vincular a biblioteca de matemática em C?
Se eu incluir <stdlib.h>ou <stdio.h>em um programa C, não preciso vinculá-los ao compilar, mas preciso vincular <math.h>, usando -lmcom o gcc, por exemplo: gcc test.c -o test -lm Qual é a razão para isto? Por que preciso vincular explicitamente a biblioteca matemática, mas não as outras bibliotecas?
254 c  compilation  math.h 



6
Por que 0 <-0x80000000?
Eu tenho abaixo um programa simples: #include &lt;stdio.h&gt; #define INT32_MIN (-0x80000000) int main(void) { long long bal = 0; if(bal &lt; INT32_MIN ) { printf("Failed!!!"); } else { printf("Success!!!"); } return 0; } A condição if(bal &lt; INT32_MIN )é sempre verdadeira. Como isso é possível? Funciona bem se eu alterar …

10
O que {0} significa ao inicializar um objeto?
Quando {0}é usado para inicializar um objeto, o que isso significa? Não consigo encontrar referências a {0}nenhum lugar e, por causa das chaves, as pesquisas no Google não são úteis. Código de exemplo: SHELLEXECUTEINFO sexi = {0}; // what does this do? sexi.cbSize = sizeof(SHELLEXECUTEINFO); sexi.hwnd = NULL; sexi.fMask = …
252 c++  c 



22
Como C calcula sin () e outras funções matemáticas?
Eu estive pesquisando desmontagens .NET e o código-fonte do GCC, mas parece que não consigo encontrar em lugar algum a implementação real sin()e outras funções matemáticas ... elas sempre parecem fazer referência a outra coisa. Alguém pode me ajudar a encontrá-los? Eu sinto que é improvável que TODO o hardware …
248 c  math  trigonometry 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.