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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

que signifie ce typedef


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Août 2005
    Messages
    307
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 307
    Par défaut que signifie ce typedef
    Salut à tous.
    En lisant un code C j'ai vu cette déclaration:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    typedef signed long long my_int64_t;
    long apparaît deux fois, je ne sais pas comment interpréter cette déclaration

  2. #2
    Membre Expert
    Avatar de Metalman
    Homme Profil pro
    Enseignant-Chercheur
    Inscrit en
    Juin 2005
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant-Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 049
    Par défaut
    Il y a eu un grand débat sur les types...

    Pour simplifier, c'est un nombre 64 bits signé "au moins".
    http://c.developpez.com/faq/?page=ty...S_taille_types
    --
    Metalman !

    Attendez 5 mins après mes posts... les EDIT vont vite avec moi...
    Les flags de la vie : gcc -W -Wall -Werror -ansi -pedantic mes_sources.c
    gcc -Wall -Wextra -Werror -std=c99 -pedantic mes_sources.c
    (ANSI retire quelques fonctions comme strdup...)
    L'outil de la vie : valgrind --show-reachable=yes --leak-check=full ./mon_programme
    Et s'assurer que la logique est bonne "aussi" !

    Ma page Developpez.net

  3. #3
    Membre chevronné
    Homme Profil pro
    Cadre informatique
    Inscrit en
    Avril 2013
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Cadre informatique

    Informations forums :
    Inscription : Avril 2013
    Messages : 183
    Par défaut
    Et si jamais c'est pas le fait de lire un tableau qui te pose problème, il fait juste une manipulation pour éviter de se trimballer un type de variables "signed long long" mais plutôt "my_int64_t".

    En gros:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    signed long long my_var = 123456789;
    est équivalent à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    typedef signed long long my_int64_t
    my_int64_t my_var = 123456789;
    Alors effectivement, sur une variable, c'est pas forcément flagrant mais tu écris 10 caractères pour désigner un type variables à la place de 16! Quand, dans ton programme, tu dois générer plusieurs variables de ce type, tu es bien content d'avoir raccourci son nom de type

    J'espère avoir été clair Bonne chance

    PS: le type "long" c'est un loooong chiffre. ben le type "long long" c'est encooooooooooooore plus long

  4. #4
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 484
    Par défaut
    Citation Envoyé par kisitomomotene Voir le message
    long apparaît deux fois, je ne sais pas comment interpréter cette déclaration
    Si c'est juste cela qui t'ennuie, « [un]signed long long int » est un type natif standard, tout-à-fait légal, mais défini seulement depuis C99.

  5. #5
    Membre très actif
    Inscrit en
    Août 2005
    Messages
    307
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 307
    Par défaut
    Merci Metalman et Obsidian.
    je ne savais pas que long long était un type!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Que signifie "Error : Data truncation" ??
    Par BouB dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 20/05/2005, 16h20
  2. [SQL6]Que signifie ce LEFT ?
    Par guy2004 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 30/01/2005, 19h18
  3. Que signifie Pagesize ?
    Par anthony70 dans le forum Débuter
    Réponses: 3
    Dernier message: 31/08/2004, 13h31
  4. Que signifier $0 et $@
    Par jaabouc dans le forum Linux
    Réponses: 6
    Dernier message: 01/06/2004, 15h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo