Pourquoi est-ce que C de format de printf ont à la fois %c et %s?

Pourquoi est-ce que C de format de printf ont à la fois %c et %s?

Je sais que %c représente un caractère unique et %s représente un nul chaîne de caractères, mais ne serait pas la représentation de chaîne suffit?

  • Probablement à distinguer entre une valeur null string et d'un caractère. Si ils ont juste eu %s, puis chaque personnage doit être null. char c = 'a';, dans ce cas c doit être null. C'est mon hypothèse bien 🙂
  • Pourquoi ne pas mettre ça comme réponse, Surtout quand C'est de la réponse
  • Hein? Que faire si vous voulez juste mettre un seul personnage, pourquoi devriez-vous besoin d'ajouter un NUL à elle? Ou n'ai-je pas obtenir quelque chose dans cette question?
  • votre hypothèse est la réponse à cette question je crois
  • Ouais, j'aurais upvoted comme une réponse comme je l'ai fait le commentaire haha.
  • Là vous allez 🙂
  • %c s'attend à un système de référence géodésique de char de type a de la valeur primitive. %s s'attend à un système de référence géodésique de char * type, un pointeur. La différence entre eux est énorme en C, en dépit du fait qu'ils s'appliquer à du texte.