IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Index du forum

Recherche:

Type: Messages; Utilisateur: Bktero

Recherche: Recherche effectuée en 0,02 secondes.

  1. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    L'idée est pas mal, même si ça ne change pas...

    L'idée est pas mal, même si ça ne change pas fondamentalement la face du monde. Au lieu de donner en paramètre à la fonction de gestion d'erreur un pointeur et un char pour indiquer le type de donnée...
  2. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    Le code suivant me donne les warnings indiqués...

    Le code suivant me donne les warnings indiqués (avec MinGW) :

    signed long a = LONG_MIN;
    unsigned long b = a;
    signed long c = b;
    printf("a =%ld b = %ld c = %ld",a,b,c);

    ...
  3. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    Euh.... Oui je pense qu'on est tous d'accord pour...

    Euh.... Oui je pense qu'on est tous d'accord pour dire que les conversions de types posent beaucoup de problèmes, surtout pour mettre des flottants dans des entiers ou l'inverse. Si tous les codes...
  4. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    Tu fais ce que tu veux avec une macro :) Un...

    Tu fais ce que tu veux avec une macro :)

    Un ami m'a montré des macros utilisées dans le noyau Linux pour faire un for sur les éléments d'une liste chaine. Et du coup, dans le code, tu as un truc...
  5. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    Ah oui avec les void*, le cast est obligatoire....

    Ah oui avec les void*, le cast est obligatoire. Tu peux le cacher, avec une macro :


    #define OBTENIR_CODE(fonction, type) ( * (type*)code_retour = fonction )

    ...

    //*...
  6. Votes reçus
    +1 -0
    Réponses
    25
    Affichages
    2 198

    Non, tu es bien obligé de caster le pointeur...

    Non, tu es bien obligé de caster le pointeur void* pour y mettre des choses. De plus, tu veux modifier le contenu du pointeur et non le pointeur lui-même.


    void * ma_variable= malloc( 10 *...
  7. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    void f_ints(void* data) { * (int*)data =...

    void f_ints(void* data)
    {
    * (int*)data = 42;
    * ((int*)data + 1) = 43;
    }

    void f_double(void* data)
    {
    *((double*)data) = 3.14;
    }
  8. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    Je me souviens que la documentation de C18 te...

    Je me souviens que la documentation de C18 te donne la liste des différences entre ce qu'il fait et ce que demande la norme ISO. Voir ici :...
  9. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    C'est sûr si ton compilateur respecte la norme....

    C'est sûr si ton compilateur respecte la norme. As-tu lu la partie de la norme que je t'indique ? Elle pourra t'aider à comprendre les mécanismes de conversion et à choisir le type qui va bien.

    De...
  10. Votes reçus
    +0 -0
    Réponses
    25
    Affichages
    2 198

    Je regarde dans la norme C99...

    Je regarde dans la norme C99 à la partie sur les conversions de type (6.3).

    Dans la partie 6.3.1.4 Real floating and integer, tu liras au point 2 :


    Si ton compilateur suit la norme C, ton...
Affichage des résultats 1 à 10 sur 10