Problème de type de données C++
Résolu/Fermé
Bertrand Denecker
Messages postés
7
Date d'inscription
vendredi 25 mars 2011
Statut
Membre
Dernière intervention
14 octobre 2012
-
25 mars 2011 à 16:32
Edwyn Messages postés 105 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 31 mars 2011 - 28 mars 2011 à 14:36
Edwyn Messages postés 105 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 31 mars 2011 - 28 mars 2011 à 14:36
A voir également:
- Problème de type de données C++
- Effacer les données de navigation - Guide
- Reinstaller windows sans perte de données - Guide
- Tnt base de données vide ✓ - Forum TNT / Satellite / Réception
- Célia doit nettoyer le tableau ci-dessous pour l’ajouter à la base de données de son entreprise. les données sont ensuite traitées automatiquement. quelles sont les 4 cellules qui risquent de poser problème ? ✓ - Forum Excel
- La base de données de sécurité du serveur n'a pas de compte d'ordinateur pour la relation ✓ - Forum Réseau
7 réponses
Bertrand Denecker
Messages postés
7
Date d'inscription
vendredi 25 mars 2011
Statut
Membre
Dernière intervention
14 octobre 2012
25 mars 2011 à 16:52
25 mars 2011 à 16:52
Voici le message d'erreur que j'ai :
1>------ Début de la génération : Projet : AL_cours_1_seq_2_exo_cours_09g, Configuration : Debug Win32 ------
1>Compilation en cours...
1>AL_cours_1_seq_2_exo_cours_09g.cpp
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(21) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : voir la déclaration de 'sprintf'
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(26) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : voir la déclaration de 'sprintf'
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(31) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : voir la déclaration de 'sprintf'
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(36) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : voir la déclaration de 'sprintf'
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(40) : error C2664: 'sprintf' : impossible de convertir le paramètre 2 de 'int' en 'const char *'
1> La conversion d'un type intégral en type pointeur nécessite reinterpret_cast, un cast de style C ou un cast de style fonction
1>Le journal de génération a été enregistré à l'emplacement "file://f:\Mes_documents\Mes_documents_1\BTS_IG_Année_1\BTS_IG_1_Visual_Cpp\AL_cours_1_seq_2_exo_cours_09g\AL_cours_1_seq_2_exo_cours_09g\Debug\BuildLog.htm"
1>AL_cours_1_seq_2_exo_cours_09g - 1 erreur(s), 4 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
C'est indigeste
Sinon, par un cout << ascii1, j'obtenais un des premiers symboles ASCII (tel que coeur, carreau, ...)
Un grand merci pour la réponse !
1>------ Début de la génération : Projet : AL_cours_1_seq_2_exo_cours_09g, Configuration : Debug Win32 ------
1>Compilation en cours...
1>AL_cours_1_seq_2_exo_cours_09g.cpp
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(21) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : voir la déclaration de 'sprintf'
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(26) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : voir la déclaration de 'sprintf'
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(31) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : voir la déclaration de 'sprintf'
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(36) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : voir la déclaration de 'sprintf'
1>f:\mes_documents\mes_documents_1\bts_ig_année_1\bts_ig_1_visual_cpp\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g\al_cours_1_seq_2_exo_cours_09g.cpp(40) : error C2664: 'sprintf' : impossible de convertir le paramètre 2 de 'int' en 'const char *'
1> La conversion d'un type intégral en type pointeur nécessite reinterpret_cast, un cast de style C ou un cast de style fonction
1>Le journal de génération a été enregistré à l'emplacement "file://f:\Mes_documents\Mes_documents_1\BTS_IG_Année_1\BTS_IG_1_Visual_Cpp\AL_cours_1_seq_2_exo_cours_09g\AL_cours_1_seq_2_exo_cours_09g\Debug\BuildLog.htm"
1>AL_cours_1_seq_2_exo_cours_09g - 1 erreur(s), 4 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
C'est indigeste
Sinon, par un cout << ascii1, j'obtenais un des premiers symboles ASCII (tel que coeur, carreau, ...)
Un grand merci pour la réponse !
Edwyn
Messages postés
105
Date d'inscription
vendredi 20 juin 2008
Statut
Membre
Dernière intervention
31 mars 2011
14
Modifié par Edwyn le 25/03/2011 à 17:01
Modifié par Edwyn le 25/03/2011 à 17:01
Bonjour,
Alors moi personnelement j'utiliserais les casts les flux.
Je veux dire cin >> char1
cout << static_cast<short>(char1)
Autant utiliser le C++ à fond plutôt que de retourner au C.
Cordialement
Avec L'informatique on sait toujours quand on commence... Mais jamais quand on termine !
Alors moi personnelement j'utiliserais les casts les flux.
Je veux dire cin >> char1
cout << static_cast<short>(char1)
Autant utiliser le C++ à fond plutôt que de retourner au C.
Cordialement
Avec L'informatique on sait toujours quand on commence... Mais jamais quand on termine !
Bertrand Denecker
Messages postés
7
Date d'inscription
vendredi 25 mars 2011
Statut
Membre
Dernière intervention
14 octobre 2012
25 mars 2011 à 17:04
25 mars 2011 à 17:04
cout << hex << ascii1; donne 4 (pour une valeur souhaitée de 106)
Merci à Edwyn - je testerai plus tard
Merci à Edwyn - je testerai plus tard
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
char variable[4];
for(int i=0;i<4;i++)
{
cout << "saisir variable " << i << endl;
cin >> variable[i];
}
for(int i=0;i<4;i++)
cout << (int) variable[i] << " - ";
cout << endl;
cin >> variable[0];
return 0;
}
using namespace std;
int main(int argc, char *argv[])
{
char variable[4];
for(int i=0;i<4;i++)
{
cout << "saisir variable " << i << endl;
cin >> variable[i];
}
for(int i=0;i<4;i++)
cout << (int) variable[i] << " - ";
cout << endl;
cin >> variable[0];
return 0;
}
Bertrand Denecker
Messages postés
7
Date d'inscription
vendredi 25 mars 2011
Statut
Membre
Dernière intervention
14 octobre 2012
25 mars 2011 à 20:53
25 mars 2011 à 20:53
Merci à Francis pour la réponse, qui marche !
Je testerai plus tard la solution d'Edwyn
Je testerai plus tard la solution d'Edwyn
Edwyn
Messages postés
105
Date d'inscription
vendredi 20 juin 2008
Statut
Membre
Dernière intervention
31 mars 2011
14
28 mars 2011 à 14:36
28 mars 2011 à 14:36
En fait c'est la même solution que celle proposé par francis.
En utilisant un static_cast et pas un cast C. (d'ailleur c'est ce que fqit le cqst C dans ce cas la (un static_cast))
Cordialement,
En utilisant un static_cast et pas un cast C. (d'ailleur c'est ce que fqit le cqst C dans ce cas la (un static_cast))
Cordialement,