View Single Post

Xhylette's Avatar


Xhylette
01.07.2013 , 04:20 PM | #15
Quote: Originally Posted by YANNICB View Post
Le code compilé est exécuté par la machine et n'écrase en aucun cas le code source dans le cas d'une erreur d'allocation mémoire.
Tu n'as pas compris. Un pointeur est une variable qui est en fait une adresse de la mémoire. Le pointeur ne contient pas le contenu de l'adresse, mais la valeur de l'adresse.

Si l'on alloue par erreur une valeur aléatoire à un pointeur, il va pointer vers une adresse qui peut se situer n'importe où dans la machine, y compris la où réside le code. Aujourd'hui, il y a des garde-fous qui empêchent ces débordements, mais ce ne fut pas toujours le cas. Et je ne suis pas sûr que c'est le cas avec tous les compilateurs actuels. Il est tentant de désactiver cette protection, parce qu'elle consomme des cycles machine.

Cela provoque des bugs absolument incompréhensibles et imprévisibles, bien entendu.
"Qu'importe la destination, seul compte le voyage."