C -conserver caract. compris entre m et n
Résolu/Fermé
'sop
Messages postés
12
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
5 juillet 2009
-
3 févr. 2009 à 16:35
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 3 févr. 2009 à 16:52
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 3 févr. 2009 à 16:52
A voir également:
- C -conserver caract. compris entre m et n
- Compris entre python ✓ - Forum Python
- Compris entre excel ✓ - Forum LibreOffice / OpenOffice
- Ajoutez à la liste de contacts ana le goff, inscrite le 27 novembre 2015, dans la catégorie i. puis triez les contacts en les classant : par ordre alphabétique de leur nom de famille (critère principal), puis par date du plus récent au plus ancien (critère secondaire). quel mot apparaît à la verticale dans la colonne "catégorie" entre les lignes 200 et 209 (en-tête compris) ? ✓ - Forum Word
- Conditions comprise entre 2 valeurs ✓ - Forum Excel
- Corinne copie un texte sur le web et le colle dans un document avec l'option "texte non formaté" (aussi appelée "texte sans mise en forme"). qu'est-ce qui est conservé ? - Forum Bureautique
3 réponses
Bonjour
Tu peux aller voir ce lien tu auras, je pense, toutes les info nécessaire
Bon courage
https://codes-sources.commentcamarche.net/
Salima
Tu peux aller voir ce lien tu auras, je pense, toutes les info nécessaire
Bon courage
https://codes-sources.commentcamarche.net/
Salima
gigaga
Messages postés
2346
Date d'inscription
vendredi 20 juin 2008
Statut
Membre
Dernière intervention
22 août 2014
301
3 févr. 2009 à 16:42
3 févr. 2009 à 16:42
include <stdio.h>
char *substring(size_t start, size_t stop, const char *src, char *dst, size_t size)
{
int count = stop - start;
if ( count >= --size )
{
count = size;
}
sprintf(dst, "%.*s", count, src + start);
return dst;
}
int main()
{
static const char text[] = "The quick brown fox jumps over the lazy dog.";
char a[10], b[5];
printf("substring = \"%s\"\n", substring(4, 13, text, a, sizeof a));
printf("substring = \"%s\"\n", substring(4, 13, text, b, sizeof b));
return 0;
}
/* my output
substring = "quick bro"
substring = "quic"
*/
char *substring(size_t start, size_t stop, const char *src, char *dst, size_t size)
{
int count = stop - start;
if ( count >= --size )
{
count = size;
}
sprintf(dst, "%.*s", count, src + start);
return dst;
}
int main()
{
static const char text[] = "The quick brown fox jumps over the lazy dog.";
char a[10], b[5];
printf("substring = \"%s\"\n", substring(4, 13, text, a, sizeof a));
printf("substring = \"%s\"\n", substring(4, 13, text, b, sizeof b));
return 0;
}
/* my output
substring = "quick bro"
substring = "quic"
*/
gigaga
Messages postés
2346
Date d'inscription
vendredi 20 juin 2008
Statut
Membre
Dernière intervention
22 août 2014
301
3 févr. 2009 à 16:45
3 févr. 2009 à 16:45
Sinon avec strncat :
int main() {
char *str1 = "It is ";
char *str2 = "raining sunny snowing foggy";
char *str3;
str3 = (char *)calloc(strlen(str1) + strlen(str2), sizeof(char));
strcpy(str3, str1);
strncat(str3, str2+8, 5);
printf("str3: %s\n", str3);
free(str3);
return 0;
}
int main() {
char *str1 = "It is ";
char *str2 = "raining sunny snowing foggy";
char *str3;
str3 = (char *)calloc(strlen(str1) + strlen(str2), sizeof(char));
strcpy(str3, str1);
strncat(str3, str2+8, 5);
printf("str3: %s\n", str3);
free(str3);
return 0;
}
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 842
>
gigaga
Messages postés
2346
Date d'inscription
vendredi 20 juin 2008
Statut
Membre
Dernière intervention
22 août 2014
3 févr. 2009 à 16:52
3 févr. 2009 à 16:52
Salut,
str3 = (char *)calloc(strlen(str1) + strlen(str2), sizeof(char));
N'oublie pas d'ajouter +1.
Si tu veux faire une duplication, tu peux tout simplement utiliser strdup (malloc + strcpy).
str3 = (char *)calloc(strlen(str1) + strlen(str2), sizeof(char));
N'oublie pas d'ajouter +1.
str3 = malloc(strlen(str1) + strlen(str2) +1);
Si tu veux faire une duplication, tu peux tout simplement utiliser strdup (malloc + strcpy).
'sop
Messages postés
12
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
5 juillet 2009
3 févr. 2009 à 16:48
3 févr. 2009 à 16:48
merci a vous. Je vais de ce pas jeter un coup d'oeil.
gigaga, ton code fait exactement ce que je voulais, merci bien ;-)
gigaga, ton code fait exactement ce que je voulais, merci bien ;-)