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.

1
Qual é o objetivo da palavra-chave estática no parâmetro de matriz da função como "char s [static 10]"?
Ao navegar em algum código-fonte, deparei-me com uma função como esta: void someFunction(char someArray[static 100]) { // do something cool here } Com algumas experiências, parece que outros qualificadores podem aparecer lá também: void someFunction(char someArray[const]) { // do something cool here } Parece que qualificadores só são permitidos dentro …
144 c  arrays  parameters  static 

6
Qual é a vantagem do __builtin_expect do GCC nas declarações if else?
Me deparei com um #define em que eles usam __builtin_expect. A documentação diz: Função interna: long __builtin_expect (long exp, long c) Você pode usar __builtin_expectpara fornecer ao compilador informações de previsão de ramificação. Em geral, você deve preferir usar o feedback real do perfil para isso (-fprofile-arcs ), pois os …
144 c  linux  gcc  built-in 


9
Qual é a diferença entre sigaction e signal?
Eu estava prestes a adicionar um manipulador de sinal extra a um aplicativo que temos aqui e notei que o autor havia usado sigaction()para configurar os outros manipuladores de sinal. Eu ia usar signal(). Para seguir a convenção, devo usar, sigaction()mas se estava escrevendo do zero, qual devo escolher?
143 c  signals  posix 

2
Significado do sinalizador -pthread ao compilar
Em vários projetos C e C ++ multiencadeados, vi o -pthreadsinalizador aplicado tanto ao estágio de compilação quanto ao de vinculação, enquanto outros não o usam e passam -lpthreadpara o estágio de vinculação. Existe algum perigo em não compilar e vincular à -pthreadbandeira - ou seja, o que -pthreadrealmente faz? …
143 c++  c  linux  pthreads 

16
Esclarecimento ponteiro para ponteiro
Eu estava seguindo este tutorial sobre como funciona um ponteiro para um ponteiro . Deixe-me citar a passagem relevante: int i = 5, j = 6, k = 7; int *ip1 = &i, *ip2 = &j; Agora podemos definir int **ipp = &ip1; e ipppontos para os ip1quais aponta i. …
142 c  pointers 

6
_DEBUG vs NDEBUG
Qual definição de pré-processador deve ser usada para especificar seções de depuração do código? Use #ifdef _DEBUGou #ifndef NDEBUGou existe uma maneira melhor de fazê-lo, por exemplo #define MY_DEBUG? Eu acho que _DEBUGé específico do Visual Studio, é o padrão NDEBUG?
142 c++  c  debugging 


4
Qual a relação entre BLAS, LAPACK e ATLAS
Não entendo como BLAS, LAPACK e ATLAS estão relacionados e como devo usá-los juntos! Venho pesquisando todos os manuais e tenho uma idéia geral do BLAS e LAPACK e como usá-los com os poucos exemplos que encontro, mas não consigo encontrar nenhum exemplo real usando o ATLAS para ver como …
142 c  lapack  blas  atlas 

30
Recursos ocultos de C
Bloqueado . Esta pergunta e suas respostas estão bloqueadas porque a questão está fora do tópico, mas tem um significado histórico. No momento, não está aceitando novas respostas ou interações. Eu sei que há um padrão por trás de todas as implementações do compilador C, portanto, não deve haver recursos …
141 c  hidden-features 


16
Qual é o objetivo de um bloco 'if (0)' no bloco if-else?
Minha pergunta é sobre a linha que mencionei no assunto e que posso ver em muitos lugares dentro do código de produção. O código geral fica assim: if (0) { // Empty braces } else if (some_fn_call()) { // actual code } else if (some_other_fn_call()) { // another actual code …
141 c  if-statement 




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.