[C] caractères bizzards..
Maxg59
Messages postés
275
Statut
Membre
-
Maxg59 Messages postés 275 Statut Membre -
Maxg59 Messages postés 275 Statut Membre -
salut a tous ! ;)
Depuis que j'ai commencé a faire des prog avec des chaines de caractéres en C, j'ai souvent eu le meme probléme :
a la fin, ma chaine de caractére s'affichai mais avec des signes bizzard à la fin( genre des fléches, smiley, coeurs etc ...(sous dos mdr :) )
Donc j'ai quelque questions :
que sont ces signes, à quoi servent ils ?
et surtout pourquoi sont-ils là? et comment les faire disparaitre ??
voici un exemple de prog qui fait sa :
(je sais que l'on peu le faire plus facilement, mais l'exercice le posai comme ça :) )
D'avance merci de votre aide :D
Depuis que j'ai commencé a faire des prog avec des chaines de caractéres en C, j'ai souvent eu le meme probléme :
a la fin, ma chaine de caractére s'affichai mais avec des signes bizzard à la fin( genre des fléches, smiley, coeurs etc ...(sous dos mdr :) )
Donc j'ai quelque questions :
que sont ces signes, à quoi servent ils ?
et surtout pourquoi sont-ils là? et comment les faire disparaitre ??
voici un exemple de prog qui fait sa :
(je sais que l'on peu le faire plus facilement, mais l'exercice le posai comme ça :) )
#include <stdio.h>
#define MAXCAR 1000
#define AVANTOUI 1
#define AVANTNON 0
void verif(char texte[], char sortie[]);
int main(void)
{
char texte[MAXCAR]; /* texte entré */
char sortie[MAXCAR+1];/* texte a afficher en sortie */
int c,i;/*caractére d'entré courant, cle*/
for(i=0;(c=getchar()) != EOF && i < (MAXCAR-1);++i)
texte[i]=c;
verif(texte,sortie);
printf("\n%s", sortie);
getchar();
return 0;
}
void verif(char entre[], char sortie[])
{
int i,j;/* clés*/
int etat=AVANTNON; /*defini l'état du caractére d'avant( \n ou pas )*/
j=i=0;
while(entre[i] != '\0')
{
/* suppretion des lignes vide */
if(entre[i]=='\n' && etat==AVANTNON)
{
etat=AVANTOUI;
sortie[j]=entre[i];
++j;++i;
}
else if(entre[i]=='\n' && etat==AVANTOUI)
{
++i;
}
else
{
sortie[j]=entre[i];
etat=AVANTNON;
++i;++j;
}
}
sortie[j]='\0';
}
D'avance merci de votre aide :D
A voir également:
- [C] caractères bizzards..
- Caractères spéciaux - Guide
- Caractères ascii - Guide
- Caracteres speciaux - Guide
- Caractères spéciaux mac - Guide
- Exemple de mot de passe à 8 caractères - Guide
je epnsais que ce n'étais pas utile....
mais a partir du moment ou j'écrit while(texte[i] != '\0') ça l'est :D
MERCI !!!!!