Zahlen Umwandeln

Gast #1444524
Lesenswert?

Tag.

Ich fange an in c zu programmieren und wollte was fragen:

ich will nur (einstellige) Ziffern verarbeiten (von 0 bis 9)
und sie über USART ausgeben.

1. Reicht es aus wenn ich unsigned char nehme ? etwa so ?
   unsigned char test=5;

2. Wie wandle ich die variable test um, sie über USART auszugeben?
   itoa ??? oder geht es anders?

P.S. Wo finde ich gute Beispiele für den Anfang???
#1444531
Lesenswert?

James schrieb:
> Tag.
>
> Ich fange an in c zu programmieren und wollte was fragen:
>
> ich will nur (einstellige) Ziffern verarbeiten (von 0 bis 9)
> und sie über USART ausgeben.
>
> 1. Reicht es aus wenn ich unsigned char nehme ? etwa so ?
>    unsigned char test=5;

Ja.
Ein unsigned char kann Zahlen von 0 bis 255 aufnehmen.

>
> 2. Wie wandle ich die variable test um, sie über USART auszugeben?
>    itoa ??? oder geht es anders?

Wenn es wirklich nur einstellige Zahlen sind

   char digit = test + '0';

digit gibst du dann über deine UART Bauchstabenroutine aus.
1
    unsigned char test = 5;
2
    char digit = test + '0';
3
    uart_putc( digit );

oder kürzer
1
    unsigned char test = 5;
2
    uart_putc( test + '0' );

Aber in test müssen wirklich nur einstellige Zahlen sein. Sobald da 
größere Zahlen drinnen sind, geht das nicht mehr.

> P.S. Wo finde ich gute Beispiele für den Anfang???

Definiere 'gut'
Gast #1445997
Lesenswert?

Guten Abend!
Noch eine andere Frage...

Ich habe folgende Schleife...
Die Schleife soll bei x=2 oder bei y=1 verlassen werden.

do
{
....
}while(x<2 && y==1);

mach irgendwas...

Warum klappt mein Ansatz nicht???

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren