|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Bannato
Iscritto dal: Nov 2002
Città: PV
Messaggi: 1210
|
[C++]Help
Ho fatto un prog in C++ per sapere il codice ASCII di un char ma mi da 1000 errori
Codice:
// files : princ.cpp
#include <iostream.h>
#include <stdlib.h>
#include "funz.h"
void main()
{
char control;
do{
AsciiCode cod = new AsciiCode();
cod.alfabeto = "a", "b",
"c", "d",
"e", "f",
"g", "h",
"i", "l",
"m", "n",
"o", "p",
"q", "r",
"s", "t",
"u", "v"
cout <<"Sciegli tra le seguenti lettere quella di cui vuoi sapere l' ASCII e digitala"<<endl;
cod.stampa_tab();
char quale;
cin >> quale;
cod.stampa_car(quale);
cout <<"Premi X per uscire"<<endl;
cin >> control;
}while(control != "X" | control != "x");
}
Codice:
//file: funz.h
#include <string>
class AsciiCode
{
private:
public:
char stampa_car(char car);
void stampa_tab();
static char alfabeto[] = new char[20];
}
char AsciiCode::stampa_car(char car)
{
int num = car;
cout << "Il codice ASCII di" << car <<" e' " << car <<endl;
return car;
}
void AsciiCode::stampa_tab()
{
for (int i=0;i<10;i++)
{
for (int j=0;j<10;j++)
{
cout <<alfabeto[i]<<"\t"<<alfabeto[j]<<endl;
}
}
}// funz
|
|
|
|
|
|
#2 | |
|
Bannato
Iscritto dal: Nov 2002
Città: PV
Messaggi: 1210
|
ekko gli errori:
Quote:
|
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Oct 2000
Città: Montreal (Canada)
Messaggi: 1309
|
dividi il file .h dal file .cpp;
header file solo dichiarazioni, file cpp definizioni... |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2002
Città: (Siena)
Messaggi: 325
|
Premetto che non conosco il c++, ma in c per scrivere il codice ASCII di un carattere basta semplicemente scrivere la variabile char come variabile decimale.
Es.: char a; .................. .................. printf("Il codice ASCII di %c è %d",a,a); Tutto qui. Quindi inserendo, ad esempio, il carattere 'a' il programma visualizzerebbe questo messaggio: Il codice ASCII di a è 97 P.S: Scegli si scrive senza i!!!!!
__________________
Heavy Metal is the Law!!! Other bands Play, MANOWAR Kill !!!! |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Poi il char è a tutti gli effetti un intero...
Si può benissimo fare 'a' + 1...che diventa 'b' |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Mi sa che stai facendo un po' di confusione fra C# e C++
AsciiCode cod = new AsciiCode(); In C++ non ha senso...basta AsciiCode cod; |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Con questo non so cosa tu ci voglia fare
static char alfabeto[] = new char[20]; Dovrebbe bastare char alfabeto[20]; Magari questa inizializzazione poteva andare nel costruttore di default: alfabeto = "a", "b", "c", "d", "e", "f", "g", "h", "i", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v" Ed in ogni caso non è corretta... Questa forma la puoi usare solamente nell'inizializzazione...in questo modo: char alfabeto[21] = {'a','b','c','d'......'v','z'}; Le lettere dell'alfabeto italiano sono 21...non 20 Per inizializzare quel vettore potevi semplicemente fare: strcpy(alfabeto,"abcdefghilmnoprstuvz"); In questo caso lo avresti dovuto fare di 22 per contenere anche lo \0... |
|
|
|
|
|
#8 | |
|
Bannato
Iscritto dal: Nov 2002
Città: PV
Messaggi: 1210
|
Ora ma da:
Quote:
Codice:
// files : princ.cpp
#include <iostream.h>
#include <stdlib.h>
#include "funz.h"
void main()
{
char control;
do{
AsciiCode cod;
cout << "Sciegli tra le seguenti lettere quella di cui vuoi sapere l' ASCII e digitala\n";
cod.stampa_tab();
cout << "\n";
char quale;
cin >> quale;
cout << "\n";
cod.stampa_car(quale);
cout <<"Premi X per uscire"<<endl;
cin >> control;
}while(control != 'X');
}
char AsciiCode::stampa_car(char car)
{
int num
num = (int)car;
cout << "Il codice ASCII di" << car <<" e' " << car <<endl;
return car;
}
void AsciiCode::stampa_tab()
{
for (int i=0;i<10;i++)
{
for (int j=0;j<11;j++)
{
cout <<alfabeto[i]<<"\t"<<alfabeto[j]<<endl;
}
}
}// funz
AsciiCode::AsciiCode()
{
strcpy(alfabeto,"abcdefghilmnoprstuvz");
}
Codice:
//file: funz.h
#include <string>
class AsciiCode
{
private:
public:
void stampa_car(char car);
char stampa_tab();
static char alfabeto[20];
AsciiCode():
};
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:38.



















