Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Char als nummera

Pagina: 1
Acties:

  • tj.jackel
  • Registratie: Augustus 2014
  • Laatst online: 28-09 06:30
Hoi,

Ik haal letters uit een array. Doe deze opnieuw indelen in een array en wil deze vervolgens in een label weergeven (VC++ 2010).

//declarations
int shiftnumber;
int counter = 26;
int counter2 = 0;
int counter3 = 0;
char basisalfabet[] ={"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};
char shiftedalfabet [26];


//get the shift number from the numericupdown
shiftnumber = static_cast<double>(shiftnum->Value);

counter2 = shiftnumber;

//go trough the shiftedalfabet array
while(counter){
counter2 = counter2 % 26;
shiftedalfabet[counter3] = basisalfabet[counter2];

counter2++;
counter3++;


counter--;
}
char temp;
temp = shiftedalfabet[1];
letterA->Text = Convert::ToString(temp);

}
Nu wordt de letter weergegeven in nummers. Hoe kan ik dit oplossen? Alvast bedankt.

  • Martindo
  • Registratie: November 2010
  • Laatst online: 24-10 11:15
Eigenlijk weergeef je wel de karakters, maar wat je nu ziet is de numerieke (ASCII) waarde van die karakters. Even googlen op ASCII tabel levert je een tabel op waar je kunt zien wat de decimale waarde voor een letter is.

Ik adviseer je meteen even je code in de code-tags te zetten:

C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//declarations
int shiftnumber;
int counter = 26;
int counter2 = 0;
int counter3 = 0;
char basisalfabet[] ={"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};
char shiftedalfabet [26];

//get the shift number from the numericupdown
shiftnumber = static_cast<double>(shiftnum->Value);

counter2 = shiftnumber;

//go trough the shiftedalfabet array
while(counter){
   counter2 = counter2 % 26;
   shiftedalfabet[counter3] = basisalfabet[counter2];

   counter2++;
   counter3++;

   counter--;
}
char temp;
temp = shiftedalfabet[1];
letterA->Text = Convert::ToString(temp);
Ik mis overigens de code waar je je karakters daadwerkelijk print. En ik denk dat [tt]Convert::ToString(temp)[/tt] denkt dat je een integere variabele invoert en er vanuit gaat dat de char dus eigenlijk een numerieke waarde is. (wat ook zo is in theorie)

[ Voor 20% gewijzigd door Martindo op 17-11-2014 22:53 ]