Questions marquées «pointers»

120
Créer un pointeur vers un tableau à deux dimensions

J'ai besoin d'un pointeur vers un tableau statique à 2 dimensions. Comment cela se fait-il? static uint8_t l_matrix[10][20]; void test(){ uint8_t **matrix_ptr = l_matrix; //wrong idea } J'obtiens toutes sortes d'erreurs comme: avertissement: affectation d'un type de pointeur incompatible la valeur...

120
Pointeurs C: pointant vers un tableau de taille fixe

Cette question s'adresse aux gourous C là-bas: En C, il est possible de déclarer un pointeur comme suit: char (* p)[10]; .. qui indique essentiellement que ce pointeur pointe vers un tableau de 10 caractères. La chose intéressante à propos de la déclaration d'un pointeur comme celui-ci est que vous...

112
Free (ptr) où ptr est NULL est-il corrompu?

Théoriquement, je peux dire que free(ptr); free(ptr); est une corruption de mémoire puisque nous libérons la mémoire qui a déjà été libérée. Mais si free(ptr); ptr=NULL; free(ptr); Comme le système d'exploitation se comportera d'une manière indéfinie, je ne peux pas obtenir une analyse théorique...

108
Récepteur de valeur vs récepteur de pointeur

Il est très peu clair pour moi dans quel cas je voudrais utiliser un récepteur de valeur au lieu de toujours utiliser un récepteur de pointeur. Pour récapituler à partir des documents: type T struct { a int } func (tv T) Mv(a int) int { return 0 } // value receiver func (tp *T) Mp(f float32)...

103
Comment faire un littéral * int64 dans Go?

J'ai un type struct avec un *int64champ. type SomeType struct { SomeField *int64 } À un moment donné dans mon code, je veux déclarer un littéral de ceci (disons, quand je sais que ladite valeur devrait être 0, ou pointer vers un 0, vous savez ce que je veux dire) instance := SomeType{ SomeField:...

103
Où est shared_ptr?

Je suis tellement frustré en ce moment après plusieurs heures à essayer de trouver où se trouve shared_ptr. Aucun des exemples que je vois ne montre le code complet pour inclure les en-têtes pour shared_ptr(et le travail). Disant simplement std, tr1et <memory>n'aide pas du tout! J'ai...

100
Quel est l'intérêt d'avoir des pointeurs dans Go?

Je sais que les pointeurs dans Go permettent la mutation des arguments d'une fonction, mais cela n'aurait-il pas été plus simple s'ils n'adoptaient que des références (avec des qualificatifs const ou mutables appropriés). Maintenant, nous avons des pointeurs et pour certains types intégrés tels que...