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 :

[ressource]Page d'info sur le C


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut [ressource]Page d'info sur le C
    Salut,

    au détour d'un forum, je viens de découvrir ceci :

    http://www.lri.fr/~aze/page_c/aide_c/

    Avis bienvenus.

    A+
    Emmanuel

    EDIT : Je suis entré en contact avec l'auteur qui est tout à fait disposé à faire évoluer son site (ajouts possible, c'est du modulaire évolutif comme on l'aime).

    Alors pas de noms d'oiseau, ni de troll, et montrons qu'on est capable de faire un travail collectif serein et de qualité pour finaliser ce site sympa et partagé au bénéfice de tous...

    Je ramasse les copies et les transmet à l'auteur au fur et à mesure.

    P.S. Y'a pas le feu...

    Voilà mes premières remarques :

    Dans 'index, remplacer "sous-programmes' par 'fonctions de la bibliothèque'.

    Toutes les fonctions ne sont pas décrites. Le plus important me parait :
    • <stdlib.h>
      • strtol()
      • strtoul()
      • strtod()
    • <math.h>
      • M_PI et M_E : préciser que ce sont des extensions courantes mais non standard.
    • <stdarg.h>
    • <errno.h>

  2. #2
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Merci pour le lien! La navigation est aisée et permet notamment de retrouver rapidement des infos sur les fonctions de la bibliothèque standard. La question de la portabilité y est traîtée succintement et le tout est aggrémenté d'exemples.

    La documentation des quelques fonctions que j'ai parcourues est très claire et précise:
    Citation Envoyé par Documentation de strncpy()
    strncpy() : copie partielle d'une chaîne de caractères.

    Prototype

    char *strncpy(char *dest, const char *sce, size_t long);
    dans: < string.h>
    Description

    strncpy() copie jusqu'à 'long' caractères de la chaîne 'sce' vers l'adresse 'dest'.
    Soit ls = strlen(sce) :

    si ls< long alors ls caractères sont copiés et long-ls caractères '\0' sont placés ensuite.

    si ls> long alors long caractères sont copiés (pas d'octet '\0' placé dans dest)
    Attention: vous devez être sûr que la zone mémoire d'adresse dest est de taille suffisante pour recevoir long caractères.

    Valeur renvoyée


    l'adresse dest
    Voir aussi
    strcpy()
    Portabilité


    DOS,
    UNIX,
    norme
    ANSI
    Exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    /*
      La première utilisation de strncpy() permet de voir que ce sous-programme
      ne place pas l'octet '\0' de marque de fin de chaîne si long< strlen(sce).
     
       La deuxième utilisation permet de voir que ce sous-programme recopie un
       certains nombre de fois l'octet '\0' si long >  strlen(sce).
    */
     
    #include < stdio.h>
    #include < string.h>
     
    int main(void) {
    char string[]= "0123456789";
    char *str1   = "bonjour a tous";
    char *str2   = "***";
    int i;
     
    strncpy( string, str1, 7);
    printf("%s\n", string);
     
    string[7] = '\0';          /* string=bon */
    printf("%s\n", string);
     
    strncpy( string, str2, 5);
    for( i=0; i< 10; i++ ) printf( "%4d", string[i] );
    printf("\n");
     
    return 0;
    }
    Ma première impression, sans évaluation approfondie du contenu technique, est que ce type de référence peut s'avérer bien pratique. Les exemples proposés sont pertinents et mettent en avant les mécanismes et certaines limitations des fonctions, opérateurs et syntaxes traités. Je suis tombé sur l'utilisation de scanf ici ou là, et les entrées utilsateur utilisées dans certains exemples ne sont pas toujours très robuste (mais il s'agit là d'exemples cours destinés à mettre en évidence certains aspects du langage et de sa bibliothèque standard).

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  3. #3
    Membre chevronné Avatar de Lunixinclar
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 416
    Par défaut
    Salut,
    Il était déjà dans mes bookmarks. Bon point il est en français. Mais il est incomplet: s'il s'agit du C ANSI il faudrait ajouter stdarg.h, errno.h ... Et il n'a pas évolué depuis trois ans. C'est pourquoi j'utilise plutôt la référence de cplusplus.com.

  4. #4
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Citation Envoyé par Lunixinclar
    Salut,
    Il était déjà dans mes bookmarks. Bon point il est en français. Mais il est incomplet: s'il s'agit du C ANSI il faudrait ajouter stdarg.h, errno.h ... Et il n'a pas évolué depuis trois ans. C'est pourquoi j'utilise plutôt la référence de cplusplus.com.
    Merci pour le liens, je ne l'avais pas non plus dans ma liste. C'est intéressant un site de référence sur le C++ qui ne référence que la bibliothèque standard du C (le reste est en construction).

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

Discussions similaires

  1. [AJAX] Avoir des infos sur une page web
    Par Skieur38 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/03/2007, 21h38
  2. Récupérer des infos sur une page externe
    Par Horrigan dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 20/07/2006, 14h46
  3. Obtenir des infos sur une page web en ligne
    Par Logan_Cale dans le forum Web & réseau
    Réponses: 1
    Dernier message: 20/08/2005, 15h36

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