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.

10
Obiettivo-C: BOOL vs bool
Ho visto il "nuovo tipo" BOOL( YES, NO). Ho letto che questo tipo è quasi come un personaggio. Per i test ho fatto: NSLog(@"Size of BOOL %d", sizeof(BOOL)); NSLog(@"Size of bool %d", sizeof(bool)); È bello vedere che entrambi i registri visualizzano "1" (a volte in C ++ bool è un …
192 c  objective-c  types  boolean 

3
formattazione printf () per hex
Si tratta di una query più curiosa di una domanda importante, ma perché quando si stampa un esadecimale come numero di 8 cifre con zeri iniziali, questo %#08Xnon visualizza lo stesso risultato di 0x%08X? Quando provo a usare il primo, il 08flag di formattazione viene rimosso e non funziona solo …
192 c  printf  hex 

19
Posso usare un letterale binario in C o C ++?
Ho bisogno di lavorare con un numero binario. Ho provato a scrivere: const x = 00010000; Ma non ha funzionato. So che posso usare un numero esadecimale che ha lo stesso valore di 00010000, ma voglio sapere se esiste un tipo in C ++ per i numeri binari e se …
191 c++  c  binary 



6
Come mai l'indirizzo di un array è uguale al suo valore in C?
Nel seguente bit di codice, i valori e gli indirizzi dei puntatori differiscono come previsto. Ma i valori e gli indirizzi dell'array no! Come può essere? Produzione my_array = 0022FF00 &my_array = 0022FF00 pointer_to_array = 0022FF00 &pointer_to_array = 0022FEFC #include <stdio.h> int main() { char my_array[100] = "some cool string"; …
189 c  pointers  arrays 

12
Inoltra un'invocazione di una funzione variadica in C
In C, è possibile inoltrare l'invocazione di una funzione variadica? Come in, int my_printf(char *fmt, ...) { fprintf(stderr, "Calling printf with fmt %s", fmt); return SOMEHOW_INVOKE_LIBC_PRINTF; } In questo caso ovviamente inoltrare l'invocazione nel modo sopra non è strettamente necessario (poiché è possibile registrare le invocazioni in altri modi o …
189 c  variadic 

25
Arrotondamento alla potenza successiva di 2
Voglio scrivere una funzione che restituisca la potenza successiva più vicina di 2 numeri. Ad esempio, se il mio input è 789, l'output dovrebbe essere 1024. Esiste un modo per raggiungere questo obiettivo senza utilizzare alcun loop ma solo utilizzando alcuni operatori bit a bit?




3
fork () si ramifica più del previsto?
Considera il seguente codice: #include <stdio.h> #include <sys/types.h> #include <unistd.h> int main(void) { int i; for(i = 0; i < 2; i++) { fork(); printf("."); } return 0; } Questo programma genera 8 punti. Come può essere possibile? Non dovrebbero invece esserci 6 punti?
186 c++  c  fork 

9
Dove gcc cerca i file di intestazione C e C ++?
Su un sistema Unix, dove gcc cerca i file header? Ho trascorso un po 'di tempo questa mattina a cercare alcuni file di intestazione del sistema, quindi ho pensato che sarebbe stata una buona informazione avere qui.
186 c  gcc  header 

1
Come vengono avviati GCC e g ++?
Questo mi ha infastidito per un po '. Come si compilano GCC e g ++? Immagino che ogni revisione venga compilata con una revisione precedentemente costruita. È vero? E se lo è, significa che le versioni più vecchie di g ++ e GCC sono state scritte in assembly?

14
Quando utilizzare la funzione inline e quando non utilizzarla?
So che inline è un suggerimento o una richiesta al compilatore e viene utilizzato per evitare le spese generali per le chiamate di funzione. Quindi, su quale base si può determinare se una funzione è candidata per l'inline o no? In quale caso si dovrebbe evitare di allinearsi?
185 c++  c  inline 

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.