Le Linee guida di base C ++ hanno la regola ES.20: Inizializza sempre un oggetto . Evita errori usati prima del set e il loro comportamento indefinito associato. Evita i problemi con la comprensione di un'inizializzazione complessa. Semplifica il refactoring. Ma questa regola non aiuta a trovare i bug, li …
Quando si progetta un proprio linguaggio di programmazione, quando ha senso scrivere un convertitore che prende il codice sorgente e lo converte in codice C o C ++ in modo che io possa usare un compilatore esistente come gcc per finire con il codice macchina? Ci sono progetti che utilizzano …
Considera la seguente enum e switch statement: typedef enum { MaskValueUno, MaskValueDos } testingMask; void myFunction(testingMask theMask) { switch (theMask) { case MaskValueUno: {}// deal with it case MaskValueDos: {}// deal with it default: {} //deal with an unexpected or uninitialized value } }; Sono un programmatore di Objective-C, ma …
Ho questi due piccoli programmi: C #include <stdio.h> int main() { if (5) { printf("true\n"); } else { printf("false\n"); } return 0; } Giava class type_system { public static void main(String args[]) { if (5) { System.out.println("true"); } else { System.out.println("false"); } } } che riporta il messaggio di errore: …
La società in cui lavoro sta inizializzando tutte le loro strutture di dati attraverso una funzione di inizializzazione in questo modo: //the structure typedef struct{ int a,b,c; } Foo; //the initialize function InitializeFoo(Foo* const foo){ foo->a = x; //derived here based on other data foo->b = y; //derived here based …
So di aver sentito abbastanza spesso che C in genere ha un vantaggio in termini di prestazioni rispetto a C ++. Non ci ho pensato nient'altro fino a quando mi sono reso conto che MSVC non sembra nemmeno supportare il più recente standard di C, ma il più recente lo …
Abbiamo sicuramente usato typedefs e #defines una volta o l'altra. Oggi, mentre lavoravo con loro, ho iniziato a meditare su una cosa. Considera le 2 situazioni seguenti per utilizzare il inttipo di dati con un altro nome: typedef int MYINTEGER e #define MYINTEGER int Come sopra, in molte situazioni possiamo …
Per anni ho considerato di scavare in quelle che considero lingue "di basso livello". Per me questo significa C e assemblaggio. Tuttavia non ho ancora avuto tempo per questo, né è mai stato necessario. Ora, poiché non vedo sorgere alcuna necessità, mi sento come se dovessi semplicemente programmare un certo …
Quindi mi sono imbattuto in molti commenti / post / ecc riguardo alla creazione diretta di makefile e su come sia una cosa sciocca da fare nel 2015. Sono a conoscenza di strumenti come CMake e in realtà uso CMake abbastanza spesso. Il fatto è che CMake sta semplicemente creando …
Il preprocessore C è collegato a C, ma ha una sintassi completamente diversa dalla lingua principale: spazi bianchi sintatticamente significativi (fine della riga termina un'istruzione, gap dopo che la macro determina l'inizio dell'elenco di sostituzione) blocchi basati su parole chiave anziché blocchi rinforzati, elifanzichéelse if definizioni guidate da parole chiave …
Ho rivisto la programmazione in C e ci sono solo un paio di cose che mi danno fastidio. Prendiamo ad esempio questo codice: int myArray[5] = {1, 2, 2147483648, 4, 5}; int* ptr = myArray; int i; for(i=0; i<5; i++, ptr++) printf("\n Element %d holds %d at address %p", i, …
So che i puntatori contengono indirizzi. So che i tipi di puntatori sono "generalmente" noti in base al "tipo" di dati a cui puntano. Ma i puntatori sono ancora variabili e gli indirizzi che detengono devono avere un "tipo" di dati. Secondo le mie informazioni, gli indirizzi sono in formato …
Qual è il tuo metodo preferito per dichiarare un puntatore? int* i; o int *i; o int * i; o int*i; Per favore, spiega perché. vedi anche: http://www.stroustrup.com/bs_faq2.html#whitespace
Quali sono i vantaggi dei letterali stringa che sono di sola lettura giustificano (-ies / -ied) il: Ancora un altro modo di spararti al piede char *foo = "bar"; foo[0] = 'd'; /* SEGFAULT */ Incapacità di inizializzare elegantemente una matrice di parole in lettura e scrittura in una riga: …
In linguaggi come C e C ++, mentre utilizziamo i puntatori alle variabili abbiamo bisogno di un'altra posizione di memoria per memorizzare quell'indirizzo. Quindi questo non è un sovraccarico di memoria? Come viene compensato? I puntatori vengono utilizzati in applicazioni con memoria insufficiente nel tempo?
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.