Das Deutsche Casio-Taschenrechner Forum wurde zum 31.12.2013 geschlossen und kann weiterhin als Nachschlagewerk verwendet werden.
Wer mehr erfahren möchte: Ein sehr guter Beitrag von Elias

Strings verarbeiten und anzeigen mit SDK

Die Nachfolgemodelle des (C)FX. (Ohne CAS)

Strings verarbeiten und anzeigen mit SDK

Beitragvon Fusselsoft-AG » Do 17. Okt 2013, 17:40

Hallo Zusammen,
nachdem ich nun schon einige Zeit in anderen Sprachen programmierte habe ich es nun mit C zutun im SDK für die Casio Taschenrechner.

Ich möchte eine String-Variable mit einem Wert füllen und den anschließend mit Print anzeigen.

Bisher habe ich das:
unsigned char showchar(unsigned char x,unsigned char y,unsigned char code){
unsigned char caracter[3];
switch(code){
case 1: caracter="1";
case 2: caracter[1]="2";
case 3: caracter[1]="3";
case 4: caracter[1]="4";
case 5: caracter[1]="5";
case 6: caracter[1]="6";
case 7: caracter[1]="7";
case 8: caracter[1]="8";
case 9: caracter[1]="9";
case 10: caracter[1]="0";
case 11: caracter[1]=".";
case 12: caracter[1]=" ";
}
locate(x,y);
PrintREV( caracter );
return 0;// Kann ich das weglassen? Ich brauche keinen rückgegebenen Funktionswert.
}

Ich habe schon alles mögliche probiert und bekomme es nicht hin.
Kann mir jemand helfen?
Fusselsoft-AG
 
Beiträge: 1
Registriert: Do 17. Okt 2013, 17:22
Taschenrechner: Casio fx-9860GII

Re: Strings verarbeiten und anzeigen mit SDK

Beitragvon Casimo » Sa 19. Okt 2013, 11:03

Ungetestet:
Code: Alles auswählen
#include <stdio.h>
#include <stdlib.h>
// ^ für sprintf

// void für eine Funktion ohne Rückgabewert
void showchar(int x, int y, int code)
{ // int (= Ganzzahlen) für die Position und den Code, das ist besser lesbar
    unsigned char character[3]; // brauchst du wirklich 3? Ich habe es mal so gelassen
   
    if(code > 0 && code < 10)
    {
        sprintf(character, "%d", code);
        // Zahl zu Zeichen
    } else if(code == 10){sprintf(character, "%d", 0);}
    else
    {
        switch(code){
            case 11: sprintf(character, ".");
                         break; // wichtig, ansonsten wird alles Nachfolgende auch ausgeführt!
            case 12: sprintf(character, " ");
                         break;
    }

    locate(x, y);
    PrintREV(caracter);
    // character mit 'ch' ;-)
}

Bdisp_PutDisp etc. nicht vergessen.
Bild
Benutzeravatar
Casimo
 
Beiträge: 111
Registriert: Fr 3. Aug 2012, 14:48
Taschenrechner: fx9860 GII USB Power Graphic 2
fxCG20


Zurück zu fx-9860 G / GII / SD / Slim, fx-9750 GII, fx-7400 GII

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste

cron