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.

2
O argumento va_list na verdade não é um va_list
Ao tentar compilar esse código #include <stdarg.h> void bar_ptr(int n, va_list *pvl) { // do va_arg stuff here } void bar(int n, va_list vl) { va_list *pvl = &vl; // error here bar_ptr(n, pvl); } void foo(int n, ...) { va_list vl; va_list *pvl = &vl; // fine here va_start(vl, …


4
Elementos da matriz dos membros struct e struct
Eu quero perguntar sobre uma declaração struct em C. Por exemplo, struct Person { char name[50]; int citNo; float salary; } prsn[20]; O que [20]faz? O que isso significa? Limita o nome a 20 (de 50) ou limita prsnde de prsn[1]a prsn[20]? E se eu escrever o código assim: struct …
8 c  struct 

1
Como testar se PyObject possui um iterador
Estou implementando uma função C como uma extensão para Python. Lá dentro abstract.h, encontrei o seguinte: /* ==== Iterators ================================================ */ /* Takes an object and returns an iterator for it. This is typically a new iterator but if the argument is an iterator, this returns itself. */ PyAPI_FUNC(PyObject *) …
8 python  c 

1
Por que os componentes atômicos do GCC precisam de uma versão "genérica" ​​adicional?
De acordo com https://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html , há: type __atomic_load_n (type *ptr, int memorder) e (o "genérico"): void __atomic_load (type *ptr, type *ret, int memorder) então void __atomic_store_n (type *ptr, type val, int memorder) e ("o genérico") void __atomic_store (type *ptr, type *val, int memorder) etc. O que é genérico nas últimas …


3
O struct tm armazena informações de fuso horário como seu membro de dados
Considere o seguinte código C ++ #include <ctime> #include <iostream> int main() { std::time_t now = std::time(nullptr); struct tm local = *std::localtime(&now); struct tm gm = *std::gmtime(&now); char str[20]; std::strftime(str, 20, "%Z", &local); std::cout << str << std::endl; // HKT std::strftime(str, 20, "%Z", &gm); std::cout << str << std::endl; // …
8 c++  c  ctime  time.h 

4
Como devemos comparar dois números inteiros?
Recentemente, escrevi um programa que classifica uma matriz. Para isso, eu precisava escrever uma função de comparação, que passarei para ela. Minha função de comparação deveria ter retornado 1 (se x> y), -1 (se x <y) ou 0 (se x = y). Escrevi uma função regular (Função 1) usando expressões …
8 c 


2
Conformidade padrão de uma macro C
Eu tenho essa pequena jóia aqui (idéia descaradamente roubada do C-FAQ): /* A lot of checks omitted to get rid of the architectures with a "weird" endianness */ /*...*/ #define MP_ENDIANESS ( (0x41424344ul == *(uint32_t*)"ABCD") ? MP_BIG_ENDIAN : MP_LITTLE_ENDIAN ) É compatível (que não é um comportamento indefinido) com o …
8 c++  c 
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.