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
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 :
Et à l'exécution :
Bonne chance
- 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 :
Bonne chance
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
par exemple :
donner une chaine de caracter
mamiemando
le code ascii est
23445445436
c just un ex