[C++] integer waarde van een character

Pagina: 1
Acties:
  • 49 views sinds 30-01-2008

  • 418O2
  • Registratie: November 2001
  • Niet online
Goedemorgen heren pw'ers..

Ik zit hier met een probleem waar ik al een uur of 3 mee zit en welke ik niet kan oplossen.

We willen een versleuteling bewerkstelligen. De bedoeling is dat de user eerst een te versleutelen zin opgeeft en daarna een 3 karakter lange sleutel invoert.

De key moet dan het volgende doen: een a stelt een 1 voor, b een 2, c een 3, etc. etc.

Dan moet het programma de zin aanpassen aan de key, dus de letter een aantal letters skippen. Klinkt een beetje vaag kan ik me voorstellen, maar hier is een voorbeeld:

Zin : gathering
sleutel : abc

de sleutel is dus abc, oftewel 1-2-3. Nu krijg je het volgende:

g a t h e r i n g
a b c a b c a b c

De g schuift 1 plaats op, de a 2, de t 3, de h weer 1, de e weer 2, etc etc...

Dit resulteerd in:

h c w i g u j p j

Nu krijgen we het voorelkaar om de characters met X te verhogen, maar we willen eigenlijk de integer waarde van een character in een integer variabele plaatsen.

We hebben al gezocht, gespeurd, geneuzeld, maar we kwamen er niet uit. Ook hebben we de ATOI functie geprobeerd, maar deze gaf geen bevredigend resultaat.

[ Voor 3% gewijzigd door 418O2 op 06-11-2003 10:39 ]


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Dit zou je in elke tutorial kunnen vinden lijkt me
C++:
1
2
char a = 'a';
int b = (int)a;

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • 418O2
  • Registratie: November 2001
  • Niet online
oh mijn god, het werkt :Y)

We zaten onwijs moeilijk te doen moet rare funties, tellers, lussen and so on, maar de oplossing bleek heel simpel

rwb _/-\o_

[ Voor 5% gewijzigd door 418O2 op 06-11-2003 10:42 ]


Verwijderd

rwb schreef op 06 november 2003 @ 10:39:
Dit zou je in elke tutorial kunnen vinden lijkt me
C++:
1
2
char a = 'a';
int b = (int)a;
LOL :D daar dacht ik dus ook aan om gewoon naar int te converteren :+ maar wist niet zeker en wilde geen stommiteit uitslaan :D

  • 418O2
  • Registratie: November 2001
  • Niet online
ik had ook verwacht dat het te simpel was om te kunnen werken.. Maar het werkt, en daar gaat het om.. ty nogmaals

  • Eelis
  • Registratie: Januari 2003
  • Laatst online: 21-02-2015
rwb schreef op 06 november 2003 @ 10:39:
Dit zou je in elke tutorial kunnen vinden lijkt me
C++:
1
2
char a = 'a';
int b = (int)a;
Casten is niet nodig, waarschijnlijk omdat er bij de conversie geen kans op dataverlies is (ongeacht je platform).

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Eelis schreef op 06 november 2003 @ 12:12:
[...]
Casten is niet nodig, waarschijnlijk omdat er bij de conversie geen kans op dataverlies is (ongeacht je platform).
Je hoeft inderdaad niet expliciet te casten. Dit gebeurt automatisch voor char -> int. De andere kant op zul je wel expliciet moeten casten.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Uhm ja, "C voor beginners les 1": karakters bestaan niet, dat zijn ook getalletjes. Een char volgens C is gewoon de kleinst adresseerbare vorm van het geheugen, en 'A' is niets anders dan een leesbare alias voor 65.

/Basic dus :)

Professionele website nodig?

Pagina: 1

Dit topic is gesloten.