Domande taggate [pointers]

68 voti
3 risposte
Perché è utile un puntatore point-to-volatile, come "volatile int * p"?
volatile è dire al compilatore di non ottimizzare il riferimento, in modo che ogni lettura /scrittura non usi il valore memorizzato nel registro...
chiesto 6 anni fa
2284 voti
8 risposte
Quando devono essere usati static_cast, dynamic_cast, const_cast e reinterpret_cast?
Quali sono gli usi corretti di: static_cast dynamic_cast const_cast reinterpret_cast Cast di stile C (type)value Trasmissione stil...
chiesto 4 anni fa
17 voti
12 risposte
Trova perdite di memoria causate da puntatori intelligenti
Qualcuno conosce una "tecnica" per scoprire perdite di memoria causate da puntatori intelligenti? Attualmente sto lavorando a un grande progetto...
16 voti
6 risposte
Esecuzione del codice assemblatore con python
Voglio eseguire il codice assembly all'interno di uno script python. È possibile? In C programming sarebbe come questo  static inline getes...
11 voti
1 risposte
Conversione di pointer-to-pointer tra classi derivate e base?
Riguardo al seguente programma C ++:  class Base { }; class Child : public Base { }; int main() { // Normal: using child as base is a...
chiesto 7 anni fa
48 voti
4 risposte
Il puntatore al tipo di classe incompleto non è consentito
Per qualche motivo non posso usare le funzioni associate all'oggetto che voglio usare. Ho aggiunto un commento alla linea che non funziona. Come...
chiesto 7 anni fa
13 voti
4 risposte
C ++: il vettore del puntatore perde il riferimento dopo push_back ()
Nel mio codice abbiamo un vettore globale di oggetto Nodo e un vettore locale di puntatori del Nodo:  #include<cstdio> #include<cstdl...
chiesto 3 anni fa
22 voti
4 risposte
In che modo i puntatori possono essere totalmente ordinati?
I puntatori in C ++ possono in generale essere paragonati solo per l'uguaglianza. Al contrario, il confronto inferiore al confronto è consentito...
14 voti
6 risposte
La matrice di char * dovrebbe terminare con "\ 0" o "\ 0"?
Diciamo che abbiamo una matrice di puntatori di caratteri  char* array[] = { "abc", "def" }; Ora cosa si dovrebbe mettere alla fine?  cha...
chiesto 10 anni fa
26 voti
6 risposte
Come si passa un puntatore a funzione membro?
Sto provando a passare una funzione membro all'interno di una classe a una funzione che accetta un puntatore della classe di funzioni membro. Il...
chiesto 9 anni fa
12 voti
12 risposte
inizializzazione dei puntatori di caratteri
Ho un puntatore char che verrebbe utilizzato per memorizzare una stringa. È usato più avanti nel programma. Ho dichiarato e inizializzato in...
chiesto 3 anni fa
21 voti
1 risposte
Vai equivalente di un puntatore vuoto in C
Ho giocato con Go un po 'creando alcune librerie di strutture dati e ho un grosso problema. Voglio che la struttura dei dati sia in grado di con...
chiesto 7 anni fa
80 voti
4 risposte
Qual è il punto di avere i puntatori in Go?
So che i puntatori di Go consentono la mutazione degli argomenti di una funzione, ma non sarebbe stato più semplice se avessero adottato solo ri...
chiesto 9 anni fa
129 voti
9 risposte
Perché l'uso di "nuovo" causa perdite di memoria?
Ho imparato prima C # e ora sto iniziando con C ++. Come ho capito, l'operatore new in C ++ non è simile a quello in C #. Puoi spiegare il mo...
46 voti
5 risposte
Puntatori di funzione e indirizzo di una funzione
Così ho pensato quando ho creato dei puntatori di funzioni, non hai bisogno del operator & per ottenere l'indirizzo della funzione iniziale:...
chiesto 2 anni fa
47 voti
7 risposte
C: puntatore a struct nella definizione della struct
Come posso avere un puntatore alla struttura successiva nella definizione di questa struttura:  typedef struct A { int a; int b; A* nex...
chiesto 7 anni fa
40 voti
6 risposte
Perché il puntatore int '++' incrementa di 4 anziché di 1?
Il valore di un puntatore è l'indirizzo di una variabile. Perché il valore di un int pointer è aumentato di 4 byte dopo che il puntatore int è a...
chiesto 6 anni fa
13 voti
8 risposte
malloc in C, ma usa sintassi di array multidimensionale
C'è un modo per malloc un array di grandi dimensioni, ma fare riferimento ad esso con la sintassi 2D? Voglio qualcosa come:  int *memory = (in...
13 voti
3 risposte
perché std :: cout convertible to void * se si utilizza g ++?
Perché si può lanciare un std::ostream su un puntatore void? Non sono a conoscenza di alcun operatore di conversione di questo tipo in std::ostr...
21 voti
4 risposte
C'è qualche caso quando "ptr1 - ptr2> 0" sarebbe diverso da "ptr1> ptr2"?
Supponendo che i due puntatori dello stesso tipo puntino all'interno dello stesso array (o dello stesso oggetto) in modo che sia la sottrazione...
chiesto 4 anni fa
22 voti
8 risposte
Sintassi del puntatore in C: perché * si applica solo alla prima variabile?
La seguente dichiarazione in C:  int* a, b; dichiarerà a come tipo int* e b come tipo int. Sono ben consapevole di questa trappola, ma quel...
chiesto 9 anni fa
34 voti
5 risposte
Accesso alla classe derivata dal membro C ++ dal puntatore della classe base
Se alloco un oggetto di una classe Derived (con una classe base di Base) e memorizzo un puntatore a quell'oggetto in una variabile che punta all...
13 voti
5 risposte
Cosa succede quando un puntatore lanciato ha un operatore di incremento?
Ad esempio:  int x[100]; void *p; x[0] = 0x12345678; x[1] = 0xfacecafe; x[3] = 0xdeadbeef; p = x; ((int *) p) ++ ; printf("The value = 0x%0...