Avatar ·

Qu'est-ce qu'une erreur de segmentation (segmentation fault) en C++ et comment la corriger ?

Bonjour à tous ! Je viens de commencer à apprendre le C++ et je rencontre constamment l'erreur "Segmentation fault" (ou "Segfault"). Le programme plante simplement, et je ne comprends pas pourquoi. Voici un exemple de mon code : ```cpp #include using namespace std; int main() { int* ptr; *ptr = 10; // Ici se produit une segmentation fault cout << *ptr << endl; return 0; } ``` J'ai déclaré un pointeur `ptr`, mais je ne lui ai pas assigné d'adresse. Quand j'essaie d'écrire la valeur 10 à ce pointeur, le programme plante. Pourquoi cela se produit-il ? Je pensais qu'un pointeur était simplement une variable qui stocke une adresse, et que je pouvais y écrire un nombre. Un autre exemple qui ne fonctionne pas chez moi : ```cpp #include using namespace std; int main() { int arr[5] = {1, 2, 3, 4, 5}; for (int i = 0; i