L'impression d'une chaîne de caractères en C, en utilisant une fonction

Je suis nouvelle marque de C et suis en train d'apprendre comment prendre une corde et l'imprimer à l'aide d'une fonction. Je vois des exemples partout à l'aide de while(ch = getchar(), ch >= 0), mais dès que je l'ai mis dans une fonction (au lieu de main()), il cesse de travailler. Maintenant, il est coincé dans une boucle sans fin... pourquoi est-ce?

//from main():
//printString("hello");

void printString(char *ch)
{
    while (*ch = getchar(), *ch >= 0)
    putchar(*ch);
}
  • Est-il une raison pour laquelle nous ne pouvons pas utiliser printf?
  • getchar() lit une entrée stdin. Voulez-vous que, ou voulez-vous imprimer "bonjour"?
  • Je vais être de manipulation des données par l'analyse d'un fichier délimité par des barres verticales dans les colonnes de 15 caractères, mais j'ai voulu tirer le code du main et de le mettre dans une fonction et j'ai été tout simplement étouffement sur comment faire une boucle à travers une chaîne de caractères à partir de stdin.
InformationsquelleAutor bafromca | 2010-09-25