Ce n'printf retour?
Aujourd'hui dans mon interview, l'intervieweur a demandé: printf est une fonction et chaque fonction retourne quelque chose; int, void, float, etc. Maintenant, ce n'printf retour comme c'est une fonction?
- Si un
void
fonction ne retourne rien du tout" ou "retournevoid
" est une question de préférence linguistique. - C'est une très mauvaise question d'entrevue: personne ne devrait penser à se rappeler les détails de n'importe quelle bibliothèque, de la documentation existent pour que! Cela signifie que vous peut-être un peu de chance si vous n'obtenez pas le poste.
- mais j'ai eu le poste que j'ai accepté l'offre de la lettre.. et je ne sais pas son bon ou mauvais, mais d'Adobe. Je suis 2009 passout et très heureux d'avoir un emploi dans cette entreprise..:-)
- Félicitations.
- Sauver les Licornes je vous remercie beaucoup...
- C'est un doublon de stackoverflow.com/questions/2727922/in-c-printf-returns-what. Cependant, il est inefficace de demander sur un forum plutôt que de consulter la bibliothèque de référence. Si vous ne savez pas dans l'interview, "je voudrais vérifier la documentation de la bibliothèque" aurait été votre meilleure réponse (je ne suis pas sûr "je vais demander sur Stack Overflow" serait d'obtenir la meilleure réception). Dans une interview, la meilleure chose est de ne pas paniquer ou regard paniqué lorsqu'ils sont confrontés à une question, vous ne pouvez pas répondre, dites comment vous pouvez aller sur la recherche de la réponse ou de la solution du problème - c'est ce que les entreprises veulent; de la résolution de problèmes.
- je pense que u sont posé la question d'un mauvais gars.. je pense que u devriez poser cette question à 4 gars (qui a pris mon quatre tech tours..) 😛
Vous devez vous connecter pour publier un commentaire.
int
. En cas de succès, le nombre total de caractères écrits est retourné.En cas d'échec, un nombre négatif est retourné.
Voir ici
Pas chaque fonction retourne quelque chose, ce qui est indiqué par l'aide de
void
:printf
est une fonction déclarée dans<stdio.h>
) et qui retourne unint
, qui est le nombre de caractères en sortie. Si une erreur se produit, le nombre est négatif.printf()
de référence de l'de MSDN:Ajouter un détail de raffinement à d'autres belles réponses:
printf()
retourne unint
, pourtant, ne fait qu'indiquer transmis vs imprimé/écrit personnages?En cas de succès, le nombre transmis est retourné.
stdout
est généralement tampon, de sorte que le nombre de caractères imprimé ne peut pas être réalisé ou ne parviennent pas jusqu'à ce que plus tard.Quand
int printf()
a de la difficulté, pour diverses raisons, il retourne un nombre négatif. Le nombre de caractères transmis n'est pas connue.Si une suite de succès
fflush(stdout)
se produit, alors la non-valeur négative deprintf()
est certainement le nombre imprimé.Note que "l'impression" d'un
'\n'
généralement bouffées de chaleurstdout
, mais même que l'action n'est pas spécifié.Quelles sont les règles de rinçage automatique stdout tampon en C?