Domande taggate «c»

C è un linguaggio di programmazione generico utilizzato per la programmazione di sistemi (OS e embedded), librerie, giochi e multipiattaforma. Questo tag deve essere utilizzato con domande generali relative al linguaggio C, come definito nella norma ISO 9899 (l'ultima versione, 9899: 2018, se non diversamente specificato - anche tag richieste specifiche della versione con c89, c99, c11, ecc.). C è distinto da C ++ e non dovrebbe essere combinato con il tag C ++ in assenza di una ragione razionale.

8
Che cos'è __stdcall?
Sto imparando a programmare Win32 e il WinMainprototipo è simile a: int WINAPI WinMain ( HINSTANCE instance, HINSTANCE prev_instance, PSTR cmd_line, int cmd_show ) Ero confuso su cosa fosse questo WINAPIidentificatore e ho trovato: #define WINAPI __stdcall Cosa fa questo? Sono confuso da questo avere qualcosa dopo un tipo di …


4
In CMake, come posso verificare se il compilatore è Clang?
Abbiamo una serie di script di build CMake multipiattaforma e supportiamo la creazione con Visual C ++ e GCC . Stiamo provando Clang , ma non riesco a capire come testare se il compilatore è Clang con il nostro script CMake. Cosa devo testare per vedere se il compilatore è …
151 c++  c  cmake  clang 

10
Alternativa standard al trucco ## __ VA_ARGS__ di GCC?
Esiste un problema ben noto con argomenti vuoti per le macro variadiche in C99. esempio: #define FOO(...) printf(__VA_ARGS__) #define BAR(fmt, ...) printf(fmt, __VA_ARGS__) FOO("this works fine"); BAR("this breaks!"); L'uso di cui BAR()sopra è in effetti errato secondo lo standard C99, poiché si espanderà a: printf("this breaks!",); Nota la virgola finale …


4
Chiama Vai funzioni da C
Sto cercando di creare un oggetto statico scritto in Vai all'interfaccia con un programma C (diciamo, un modulo del kernel o qualcosa del genere). Ho trovato la documentazione su come chiamare le funzioni C da Go, ma non ho trovato molto su come andare dall'altra parte. Quello che ho scoperto …

4
Perché questo mangiatore di memoria non mangia davvero memoria?
Voglio creare un programma che simuli una situazione di memoria insufficiente (OOM) su un server Unix. Ho creato questo semplicissimo mangiatore di memoria: #include <stdio.h> #include <stdlib.h> unsigned long long memory_to_eat = 1024 * 50000; size_t eaten_memory = 0; void *memory = NULL; int eat_kilobyte() { memory = realloc(memory, (eaten_memory …


5
Come compilare clang in llvm IR
Voglio che clang compili il mio C/C++codice in LLVMbytecode anziché in eseguibile binario. Come posso raggiungerlo? E se ottengo il LLVMbytecode, come posso prenderlo per compilarlo ulteriormente in eseguibile binario. Fondamentalmente voglio aggiungere un po 'del mio codice al LLVMbytecode prima di compilare un eseguibile binario.
150 c  llvm  clang 

12
Perché x [0]! = X [0] [0]! = X [0] [0] [0]?
Sto studiando un po 'di C ++ e sto combattendo con i puntatori. Capisco che posso avere 3 livelli di puntatori dichiarando: int *(*x)[5]; in modo che *xsia un puntatore a un array di 5 elementi che sono puntatori a int. Anche io lo so x[0] = *(x+0);, x[1] = …
149 c++  c  arrays  pointers 

17
Qual è il punto dei puntatori const?
Non sto parlando di puntatori a valori const, ma di puntatori const stessi. Sto imparando il C e il C ++ oltre le cose basilari e fino ad oggi ho capito che i puntatori vengono passati per valore alle funzioni, il che ha senso. Ciò significa che all'interno di una …
149 c++  c  pointers  const 

3
Scrivi nel file .txt?
Come posso scrivere un piccolo pezzo di testo in un .txtfile? Sono stato su Google per oltre 3-4 ore, ma non riesco a scoprire come farlo. fwrite(); ha così tanti argomenti e non so come usarlo. Qual è la funzione più semplice da usare quando vuoi solo scrivere un nome …
149 c  linux 




Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.