Je n'ai pas de source pour confirmer, mais il m'étonnerait beaucoup que ceci soit fonctionnel : int size = (char *)addn - (char *)add;
(et je ne parle même pas du 0x42424242, trop facile)
Et ce genre de problème ne viendrait peut-être pas à l'esprit d'un programmeur C, mais très certainement à celui d'un programmeur C++ : d'où la surcharge de l'opérateur () et la notion de foncteur (ce qui donne d'ailleurs une piste pour l'écrire en C, mais en perdant l'homogénéité de la forme des appels). Finalement ce n'est peut-être pas si éloigné d'une idée simple, et ne pas y penser relève peut-être de l'acceptation profonde du fait qu'on ne peut pas l'écrire simplement. :-)
[^] # Re: pourquoi le lisp
Posté par Yann Hodique (site web personnel) . En réponse à la dépêche Sortie de SBCL 1.0. Évalué à 2.
int size = (char *)addn - (char *)add;
(et je ne parle même pas du 0x42424242, trop facile)
Et ce genre de problème ne viendrait peut-être pas à l'esprit d'un programmeur C, mais très certainement à celui d'un programmeur C++ : d'où la surcharge de l'opérateur () et la notion de foncteur (ce qui donne d'ailleurs une piste pour l'écrire en C, mais en perdant l'homogénéité de la forme des appels). Finalement ce n'est peut-être pas si éloigné d'une idée simple, et ne pas y penser relève peut-être de l'acceptation profonde du fait qu'on ne peut pas l'écrire simplement. :-)