Se connecter / S'enregistrer
Votre question

[C] Chaine de caractere

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
27 Avril 2006 09:57:38

salut a tous,

Voila j'ai un problème tout bête mais je comprend pas grand chose à l'utilisation des pointerus donc....
Il faut que j'écrive une à une les lettres de ma chaine de caractère str, je ne peux toucher qu'à la fction my_aff_str()...
si qqun pouvait m'aider ca serait vraiment cool, avc une ptite explication si possible... Mirci!! =)

int main (int ac, char **av)
{
char str="tot";
my_put_str(&str);
}

void my_putchar(char c)
{
write(1, &c, 1);
}

void my_put_str(char *str)
{
int i;
for(i=0;i<3;i++)
{
my_putchar(*(str+i));
}
}

Autres pages sur : chaine caractere

a b L Programmation
27 Avril 2006 13:11:59

J'ai pas testé ton programme, mais apparemment, tu appelle my_put_str avec &str. Or str est du type char *, donc *str est du type char et &str est du type char **
ta fonciton prend en paramètre un char * et pas un char **, donc change ta fonction ou appelle-la avec simplement str.
27 Avril 2006 20:43:00

str, c'est un tableau, pas une simple variable. donc char str[3]="tot";
@+ ;-)
28 Avril 2006 10:25:52

je dirais même plutôt :
char str[4]="tot"
ou
char str[]="tot"

Car n'oublions pas que toute chaine de caractère se termine pas "\0".
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS