Aaaah, je me rappelle de l'histoire maintenant.
Next a introduit BOOL dans objc au debut des annees 90, qui est en fait un typedef sur unsigned char, donc avec le comportement decrit au dessus.
Ils l'ont utilise un peu partout, et quand c99 a introduit boolean (ou bool? Mon c est assez mauvais je doit avouer), ils se sont fait baiser par la compat binaire, donc impossible de changer les api existantes, et la coherence avec l'existant les a force a continuer a utiliser BOOL.
Bref, au final ca doit exister aussi en C, juste vachement moins vicieux vu qu'on s'attend pas a ce qu'un unsigned char puisse recevoir n'importe quelle valeur differente de 0.
[^] # Re: Pascal...
Posté par groumly . En réponse au journal Python comme premier langage de programmation ?. Évalué à 2.
Aaaah, je me rappelle de l'histoire maintenant.
Next a introduit BOOL dans objc au debut des annees 90, qui est en fait un typedef sur unsigned char, donc avec le comportement decrit au dessus.
Ils l'ont utilise un peu partout, et quand c99 a introduit boolean (ou bool? Mon c est assez mauvais je doit avouer), ils se sont fait baiser par la compat binaire, donc impossible de changer les api existantes, et la coherence avec l'existant les a force a continuer a utiliser BOOL.
Bref, au final ca doit exister aussi en C, juste vachement moins vicieux vu qu'on s'attend pas a ce qu'un unsigned char puisse recevoir n'importe quelle valeur differente de 0.