Fonction_c++
Résolu
julia
-
julia -
julia -
Bonjour,
Bonjour,
j'ai fais une fonction qui transfrome un char en int .. en c++ la voila :
include<iostream.h>
using namespace std;
int main(){
char c;
int a;
cout<<"donner un caractére"<<endl;
cin>>c;
a=c;
cout<<"son code ascii est "<<a
system("pause");
return 0;
}
comment je peux la modifier pour obtenire le code ascii d'une chaine de caractére et n'est pas un caractére????
merci
Bonjour,
j'ai fais une fonction qui transfrome un char en int .. en c++ la voila :
include<iostream.h>
using namespace std;
int main(){
char c;
int a;
cout<<"donner un caractére"<<endl;
cin>>c;
a=c;
cout<<"son code ascii est "<<a
system("pause");
return 0;
}
comment je peux la modifier pour obtenire le code ascii d'une chaine de caractére et n'est pas un caractére????
merci
Configuration: Windows XP Internet Explorer 6.0
4 réponses
-
En fait ton programme comporte quelques erreurs :
- de nos jours on n'inclue plus <iostream.h> mais <iostream>,
- tu peux laisser le "using namespace std;" (ce qui évite d'avoir à mettre les std::) mais attention à ne pas le faire dans des headers (fichiers .hpp). Personnellement je te conseille plutôt de mettre les std:: même si c'est un peu plus lourd à écrire,
- évite le system("pause"); qui est spécifique à windows et utilise plutôt la fonction getchar(); (header <cstdio>).
Voici ce que ça donne à la fin :#include <iostream> int main(){ char c; int a; std::cout << "donner un caractére" << std::endl; std::cin >> c; a = c; std::cout << "son code ascii est " << a << std::endl; getchar(); return 0; }
Et à l'exécution :donner un caractére f son code ascii est 102
Bonne chance -
Je sais que ton code marchera sous windows tel que tu l'as donné, mais je t'invite néanmoins à y apporter les corrections que je t'ai donnée afin qu'il soit propre, actualisé et portable. En outre il manquait un # et un ; dans ton code de départ. Je sais que c'est un exercice mais il faut prendre les bonnes habitudes dès le début ;-) Après tu fais comme tu veux :p
Pour la suite de ton exercice il suffit de lire une chaîne (std::string, header <string>) au lieu d'un caractère et de la parcourir avec une boucle for.
https://community.hpe.com/t5/custom/page/page-id/HPPSocialUserSignonPage?redirectreason=permissiondenied&referer=https%3A%2F%2Fcommunity.hpe.com%2Ft5%2FServers-Systems-The-Right%2FSGI-com-Tech-Archive-Resources-now-retired%2Fba-p%2F6992583
Tu peux facilement récupérer la longueur d'une chaîne avec la méthode avec la méthode size(). Je te donne le début et je te laisse finir ton exercice :#include <iostream> #include <string> #include <cstdio> int main(){ char c; int a; std::cout << "tapez une chaine" << std::endl; std::cin >> s; std::cout << "son code ascii est "; for(std::size_t i = 0 ; i <s.size() ;++i){ //... à toi de jouer } std::cout << std::endl; getchar(); return 0; }
Bonne chance -
À votre service ;-)
Bonne continuation ! -
Oui mais dans un nouveau sujet (forum programmation). Dans un premier temps cherche sur google (ou tape dans un terminal sous linux) :
man srand
Bonne chance