Accueil > Forum > > > > les chaines de caractères dans C
les chaines de caractères dans C
lundi 30 mai 2005 à 15:17:45 |
les chaines de caractères dans C

hzocm
|
Bonjour,
Je voudrais copier un fragment de la chaine A, comment faire??
ex: A = hello, je suis une chaine
je veux copier de la position 3 à 5 --> j'aurai donc: "lo,"
******
|
|
lundi 30 mai 2005 à 15:30:05 |
Re : les chaines de caractères dans C

vecchio56
|
char chaine[] = "hello"; chaine de base
pour copier de la position i à la position j dans une chaine c:
strncpy(c, chaine + i, j - i);
par exemple chaine+3 pointe vers la chaine "lo"
|
|
lundi 30 mai 2005 à 15:32:43 |
Re : les chaines de caractères dans C

abdoulax
|
Ce que tu pe faire, c' un truc du genre :
int a,b; char chaineB[strlen(chaineA)]; for (a=3, b=5; a < b;a++) chaineB[strlen(chaineB)+1] = chaineA[a]; chaineB[strlen(chaineB)+1] = '\0';
Du moins c un truc de ce genre. Après j si ça se trouve y a déjà une fonction qui est faite expret ^^
Have Fun ...
|
|
lundi 30 mai 2005 à 15:39:16 |
Re : les chaines de caractères dans C

vecchio56
|
char chaineB[strlen(chaineA)];
Tu ne peux pas faire ca, quand tu crée un tableau comme ca (local), tu
dois donner une constante pour spécifier la taille. C'est vrai que gcc
laisse passer ca mais sous vs ca n'ira pas
|
|
lundi 30 mai 2005 à 15:51:37 |
Re : les chaines de caractères dans C

hzocm
|
j'ai fait ça:
char* lireRaison(char* anEvent){
char* tmp;
char a[1024];
char b[1024];
int n;
tmp = (char*) malloc (128);
strcpy(a,strstr(anEvent,"GTT_")); // la 1ere caractère
strcpy(b,strstr(a,"\n")); // la après-dernière caractère
n = strlen(a) - strlen(b);
strncpy(tmp,a,n);
printf("tmp =%s\n",tmp);
return tmp;
}
Le problème: Il ajoute par fois, quelques choses à la fin de
tmp!!!!!! Je ne comprend pas. C'est peut être un problème
d'adresse??
|
|
lundi 30 mai 2005 à 16:13:47 |
Re : les chaines de caractères dans C

hzocm
|
Je fait ça et il donne le bon résultat:
char* lireRaison(char* anEvent){
char* tmp;
char a[1024];
char b[1024];
int n;
int i;
tmp = (char*) malloc(256);
strcpy(a,strstr(anEvent,"GTT_")); // 1ere position
strcpy(b,strstr(a,"\n"));// après dernière position
n = strlen(a) - strlen(b);
strncpy(tmp,a,n);
strcat(tmp,"\0");
strcat(tmp,"\0"); //*
printf("tmp =%s\n",tmp);
return tmp;
}
Par contre, je comprend pas du tout, pourquoi quand je ne mets pas la
lgine (*), il ajoute des fois des caractères à la fin de ma
variable!!!!!
|
|
lundi 30 mai 2005 à 16:24:21 |
Re : les chaines de caractères dans C

vecchio56
|
Il me semble que strcnpy ajoute automatiquement un zero terminal, mais
c'est à vérifier. Vu ton résultat, on dirati que ce n'est pas le cas.
Tu peux alors faire:
...
strncpy(tmp,a,n);
*(tmp + n + 1) = 0;
...
|
|
lundi 30 mai 2005 à 16:42:45 |
Re : les chaines de caractères dans C

hzocm
|
enfait, le premier
code ne marche pas, il donne des mêmes erreurs lorsqu'on le met dans un
autre prog. (Je comprend trictement rien)
ceci marche:
char* lireRaison(char* anEvent){
char* tmp;
char a[1024];
char b[1024];
int n;
tmp = (char*) malloc(256);
strcpy(a,strstr(anEvent,"GTT_"));
strcpy(b,strstr(a,"\n"));
n = strlen(a) - strlen(b);
strncpy(tmp,a,n);
*(tmp+n) = 0;
return tmp;
}
Conclusion: j'aime pas C, java est bc mieux :((
|
|
Cette discussion est classée dans : chaine, chaines, caractères, copier
Répondre à ce message
Sujets en rapport avec ce message
Diviser une chaine de caractères en 3 chaines de caractères [ par rico77200 ]
A la base je dipose d'un fichier .txt dont le contenu est :apprenti1;ti1;te1apprenti2;ti2;te2apprenti3;ti3;te5apprenti4;ti4;te4apprenti5;ti5;te5Je sou
Chaines de caractères C++ [ par Scalpweb ]
Bonjour à tous. Je suis un programmeur VB qui essaye d'apprendre le C++. En VB, je connais de nombreuses instrcutions pour gérer les chaines de caract
remplir un tableau avec des chaines de caractères (C) [ par djibfr ]
Bonjour à tous! Alors voila, j'ai un petit problème tout bête mais je n'arrive pas à la résoudre et mes recheches ne m'ont pas trop éclairé. Je souhai
Chaines de caractères [ par Roro8883 ]
Salut,je suis complètement perdu et embrouillé dans les chaînes de caractères en C++ !!!!Comment est-ce que je peux faire pour savoir, dans une chaine
analyse syntaxique [ par fadiam ]
Bonjour à tous. je cherche à réaliser une fonction qui modifie une chaine de caractères.elle n'accepte que les "chiffres" de 0 à 9 et quelques autres
comment traiter une chaine de caractères séparée par espaces (String) [ par baptchr55 ]
Bonjour à tous, j'ai un nouveau problème. Je récupère une chaine de caractères dans un "[i]string[/i]", et je souhaiterais extraire ceux-ci mot par m
suppression caractère [ par fadiam ]
bonsoir. une fonction lisant une chaine de caractères n'accepte que les caractères entre '0' et '9' (chiffres) et les ',' '-' '.' et ' '. Si il y a d
Enlever les caractères non affichables d'un chaine de caractères [ par mmaximum ]
Bonjour à tous,Je cherche un moyen d'enlever tous les caractères spéciaux d'un chaines ( accents,signes spéciaux) pour les remplacer par la lettre san
extraction des sous-chaine des caractères séparées par des virgules [ par OTHKREEN ]
bonjour à tous,j'ai un problème avec les chaines de caractères en C++.j'ai ecrit quelques instructions pour demander à un utilisateur d'entrer une cha
comment recherecher un mot dans une chaine de caractères ?? [ par yosboss ]
Salut à tous,je sollicite votre aide pour rechercher un mot dans un ensemble de chaine de caractère contenu dans un ficher !
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|