Articles of puntatori di

Come creare due classi in C ++ che usano l’un l’altro come dati?

Sto cercando di creare due classi, ognuna delle quali contiene un object dell’altro tipo di class. Come posso fare questo? Se non riesco a farlo, c’è un aggiramento, come se ogni class contenga un puntatore all’altro tipo di class? Grazie! Ecco cosa ho: File: bar.h #ifndef BAR_H #define BAR_H #include “foo.h” class bar { public: […]

Pointer vs array in C, differenza non banale

Pensavo di averlo capito davvero, e rileggere lo standard (ISO 9899: 1990) conferma semplicemente la mia comprensione ovviamente sbagliata, quindi ora lo chiedo qui. Il seguente programma si blocca: #include #include typedef struct { int array[3]; } type1_t; typedef struct { int *ptr; } type2_t; type1_t my_test = { {1, 2, 3} }; int main(int […]

Perché non posso trattare un array come un puntatore in C?

Vedo molto questa domanda su SO. Forse non in così tante parole … ma di tanto in tanto c’è confusione su come gli array sono diversi dai puntatori. Quindi ho pensato di dedicare un po ‘di tempo a domande e risposte su questo. Ai fini di questa domanda e risposta assumeremo un sistema a 32 […]

Memorizza un int in un array di caratteri?

Voglio memorizzare un int di 4 byte in un array di caratteri … in modo che le prime 4 posizioni dell’array char siano i 4 byte dell’int. Quindi, voglio estrarre l’int dall’array … Inoltre, punti bonus se qualcuno può darmi il codice per fare questo in un ciclo … IE scrivendo come 8 ints in […]

Quando un nome di matrice o una funzione ‘convertita’ in un puntatore? (in C)

1) Idea sbagliata : Ogni volta che un array viene dichiarato in linguaggio C, viene creato implicitamente un puntatore al primo elemento dell’array (il nome dell’array). (E ‘? Io non la penso così!) Le prime due righe di questa pagina (anche se non sono sicuro della correttezza delle informazioni) sono le stesse. Come abbiamo visto, […]

C’è un modo per determinare la dimensione di un array C ++ a livello di programmazione? E se no, perché?

Questa domanda è stata ispirata da una domanda simile: come elimina [] “sapere” la dimensione della matrice di operandi? La mia domanda è leggermente diversa: esiste un modo per determinare la dimensione di un array C ++ a livello di codice? E se no, perché? Ogni funzione che ho visto che richiede un array richiede […]

Posso prendere l’indirizzo dell’elemento one-past-end di un array?

Possibile duplicato: Prendi l’indirizzo di un elemento dell’array one-past-the-end tramite subscript: legale secondo lo standard C ++ o no? int array[10]; int* a = array + 10; // well-defined int* b = &array[10]; // not sure… L’ultima riga è valida o no?

In C, qual è la syntax corretta per la dichiarazione dei puntatori?

Ricordo vagamente di averlo visto prima in una risposta ad un’altra domanda, ma la ricerca non è riuscita a fornire la risposta. Non riesco a ricordare quale sia il modo corretto per dichiarare le variabili che sono puntatori. È: Type* instance; O: Type *instance; Anche se so che entrambi verranno compilati nella maggior parte dei […]

C ++ passa un array per riferimento

è permesso passare una matrice per riferimento? void foo(double& *bar) Sembra che il mio compilatore dica no. Perché? Qual è il modo corretto per passare un array per riferimento? O un lavoro in giro? Ho un argomento dell’array che il mio metodo dovrebbe modificare e che dovrei recuperare in seguito. In alternativa, potrei rendere questo […]

Indirizzo del puntatore in una matrice multidimensionale C

Sto scherzando con array e puntatori multidimensionali. Ho visto un programma che stampa i contenuti e gli indirizzi di un semplice array. Ecco la mia dichiarazione di array: int zippo[4][2] = { {2,4}, {6,8}, {1,3}, {5,7} }; La mia attuale comprensione è che zippo è un puntatore e può contenere l’indirizzo di un paio di […]