Salut à tous,
En C ou en C++, si on prend un pointeur (sur n'importe quel type) et qu'on détecte sa taille, par exemple:
int* ptr=0;
cout << sizeof(ptr) << endl;
On obtient 4, donc 4 octets de mémoire. J'en déduis qu'un pointeur est un peu comme un unsigned int, pointant sur le premier octet de la mémoire s'il est égal à 1, sur le 2ème octet de la mémoire s'il est égal à 2, et ainsi de suite.
Le problème, c'est qu'un int ne peut pas contenir une valeur déterminée infiniment grande. Admettons que j'aie 5 Go de mémoire vive ou plus, je ne pourrai alors plus coder toutes mes adresses sur un petit pointeur de 4 octets.
Celà signifie-t-il qu'on est limité à 4 Go de mémoire, ou que j'ai loupé un truc au sujet des pointeurs ?
Merci d'avance
Lionel
Partager