Microsoft _stprintf avertissement
Pourquoi je reçois le message d'avertissement suivant le code suivant 🙂
Code:
_stprintf(m_szFileNamePath,_T("%s"),strFileName);
avertissement C4996: '_swprintf': swprintf a été modifié pour être conforme avec le standard ISO C, l'ajout d'un caractère supplémentaire nombre de paramètre. Pour l'utilisation traditionnelle de Microsoft swprintf, ensemble _CRT_NON_CONFORMING_SWPRINTFS.
Je sais _strprintf est une macro qui, si _UNICODE est défini permettra d'évaluer à _swprintf sinon, il sera sprintf.
Maintenant, qu'est-ce _swprintf. Il y a une fonction swprintf, mais pourquoi est-_stprintf l'évaluation de _swprintf au lieu de swprintf.
Quelle est la différence b/w le _xxx et xxx fonctions?
EDIT:
D'accord il y a deux définitions de la version UNICODE de _stprintf, dont l'un est inclus?
L'un dans tchar.h ou strsafe.h?
je demande à propos de _stprintf, c'était une faute de frappe
OriginalL'auteur akif | 2009-08-18
Vous devez vous connecter pour publier un commentaire.
http://msdn.microsoft.com/en-us/library/ybk95axf%28VS.80%29.aspx
Ne pas l'avertissement de l'expliquer? Parce qu'ils ont changé le comportement. En général, les gens aiment savoir quand le code ne fait pas ce qu'ils attendent. 😉
OriginalL'auteur suszterpatt
Peut-être cela?
OriginalL'auteur Gank
Microsoft propose sa propre extension de la CRT _swprintf - n'est pas compatible (par exemple) avec unix
OriginalL'auteur Dewfy
Microsoft (?) préfixe sinon, largement disponible, non-win32 fonctions qui ne faisaient pas partie de la norme C avec un trait de soulignement.
OriginalL'auteur nos
Cela devrait fonctionner
OriginalL'auteur Michael Haephrati