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 :

Question idiote : Faire cohabiter des int et des char dans une chaine


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 18
    Par défaut Question idiote : Faire cohabiter des int et des char dans une chaine
    Je suis pas sur que ce soit possible mais peut-on mettre des nombres dans une chaine de caractère ? Genre : "# 3 # 5 1024 # 7 1024"

    Sinon comment je pourrais faire pour "compter" un nombre de 0 et le rentrer dans le tableau, en le differenciant des autres nombres, n'étant pas forcement des 0 ?

    Merci pour votre réponse

  2. #2
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Citation Envoyé par Arry_C
    Je suis pas sur que ce soit possible mais peut-on mettre des nombres dans une chaine de caractère ? Genre : "# 3 # 5 1024 # 7 1024"

    Sinon comment je pourrais faire pour "compter" un nombre de 0 et le rentrer dans le tableau, en le differenciant des autres nombres, n'étant pas forcement des 0 ?

    Merci pour votre réponse
    j' ai du mal a comprendre ce que tu recherche...
    Et tu devrais peu etre pettre un titre plus parlant ...
    Ca peu toujours aider...
    Tant qu ety est dans ta prochaine reponse met sur qel OS tu veux le faire etc...
    Ca peux des fois servir...

  3. #3
    Membre expérimenté Avatar de damienlann
    Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    293
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2005
    Messages : 293
    Par défaut
    Citation Envoyé par Arry_C
    peut-on mettre des nombres dans une chaine de caractère ?
    oui...
    Citation Envoyé par Arry_C
    Sinon comment je pourrais faire pour "compter" un nombre de 0 et le rentrer dans le tableau, en le differenciant des autres nombres, n'étant pas forcement des 0 ?
    hein??

  4. #4
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Citation Envoyé par damienlann
    oui...
    hein??
    Les nbs, ce sont des caracteres non?

  5. #5
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    char tab[10];
    tab[0] = '1';
    tab[1] = '2';
    tab[2] = '\0';
    Pour l'autre question, j'ai rien compris

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 18
    Par défaut
    Bon en clair je veux pouvoir ecrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    tab[0]=1428;
    tab[1]='#';
    tab[2]=7;
    tab[3]=1024;
    for (i=0;i<4;i++)
    {
    printf("%..." ,tab[i]);
    }
    Et que ça m'affiche : 1428 # 7 1024

  7. #7
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Citation Envoyé par Arry_C
    Bon en clair je veux pouvoir ecrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    tab[0]=1428;
    tab[1]='#';
    tab[2]=7;
    tab[3]=1024;
    for (i=0;i<4;i++)
    {
    printf("%..." ,tab[i]);
    }
    Et que ça m'affiche : 1428 # 7 1024
    En suposant que tab soit un char...
    1428 corespond a quel caractere???
    Non par ce que si tu met ca comme ca tu met la valeur d'un caractere dans tab[0]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    char tab[10];
    strcpy(tab,"1428");
    strcpy(tab,"#");
    strcpy(tab,"7");
    strcpy(tab,"1024");
    printf("%s",tab);
    Ca doit fonctionner...

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 18
    Par défaut
    Citation Envoyé par miron
    En suposant que tab soit un char...
    1428 corespond a quel caractere???
    Non par ce que si tu met ca comme ca tu met la valeur d'un caractere dans tab[0]
    Je sais pas mais justement ça va afficher le caractère
    Hors je veux pouvoir differentier les caractère des nombres dans mon tableau...
    Mais je pense pas que ça soit possible.

  9. #9
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Citation Envoyé par miron
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    char tab[10];
    strcpy(tab,"1428");
    strcpy(tab,"#");
    strcpy(tab,"7");
    strcpy(tab,"1024");
    printf("%s",tab);
    Ca doit fonctionner...
    Et non ca fonctionne pas, à chaque fois tu ecrases ce que tu as mis juste avant. Surtout que la ton tableau est trop petit...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    char tab[124];
    strcpy(tab,"1428");
    strcat(tab," # ");
    strcat(tab," 7 ");
    strcat(tab," 1024 ");
    printf("%s",tab);
    Pour ton histoire de matrice non, tu ne peux pas mettre 1428 dans un char, pourquoi?
    Deja parce que un char s'est codé sur 1 octet donc la valeur va de -127 à 127, à la limite un unsigned char mais la tu va de 0 à 255, donc non tu ne peux pas.

    La matrice originale

    que je dois compresser en :
    79 0 -2 -1 -1 -1 0 0 -1 #55
    Et alors c'est embetant de mettre ca dans un tableau de char?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sprintf(buffer, "%d %d %d %d %d %d %d %d %d #%d", 79, 0, -2, -1, -1, 0, 0, -1, 55);
    Et apres tu peux parser avec sscanf.

  10. #10
    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
    Citation Envoyé par miron
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    char tab[10];
    strcpy(tab,"1428");  /* 4 */
    strcpy(tab,"#");     /* + 1 = 5 */
    strcpy(tab,"7");     /* + 1 = 6 */
    strcpy(tab,"1024");  /* + 4 = 10 */
    printf("%s",tab);
    Ca doit fonctionner...
    Non. A partir de "#", c'est strcat(). Et là, ça explose, parce qu'il manque une place pour le 0 final...

    Au lieu de montrer à tout le monde que tu ne sais ni coder ni compter, va faire tes révisions...

  11. #11
    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
    Citation Envoyé par Arry_C
    Et que ça m'affiche : 1428 # 7 1024
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    printf("1428 # 7 1024\n");
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    char const s[] = "1428 # 7 1024";
    printf("%s\n", s);
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    printf("%d # %d %d\n", 1428, 7, 1024);

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

Discussions similaires

  1. [MySQL] Une question idiote basique (j'ai pourtant lu des tutos..)
    Par PMulE dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 29/08/2012, 18h17
  2. Réponses: 9
    Dernier message: 26/03/2011, 09h46
  3. [RegEx] Substituer des clé par leurs valeur dans une chaine
    Par marcha dans le forum Langage
    Réponses: 6
    Dernier message: 02/07/2010, 15h53
  4. Réponses: 3
    Dernier message: 13/09/2007, 18h11
  5. Problème de buffer avec des int et des char
    Par Lolita59 dans le forum Réseau
    Réponses: 23
    Dernier message: 04/05/2006, 11h09

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