PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem beim Proggen



Robbe64
10.01.2008, 16:25
Hallo, kann mir jemand von euch sagen was an diesem Programm Falsch ist, bzw. warum die Ausgabe so komisch ist (Man achte auf die Zeichen nach dem "HALLO"?



#include "RP6RobotBaseLib.h"


//===============================================
int main(void) {

initRobotBase();

//Vaiablendeklaration
char puffer[5];

//Eingabe

//Verarbeitung
writeString_P("Moin\n");

puffer[0]= 'H';
puffer[1]= 'A';
puffer[2]= 'L';
puffer[3]= 'L';
puffer[4]= 'O';

writeString(puffer);
writeString_P("\n");


return 0;
}


Die Ausgabe:


[READY]
Moin
HALLO□_□(□ù□

radbruch
10.01.2008, 16:58
Hallo Robbe64

In C werden Zeichenketten mit 0 am Ende gekennzeichnet, deshalb werden mit deinem Programm solange Zeichen gesendet, bis eine 0 im Speicher auftaucht:



#include "RP6RobotBaseLib.h"


//===============================================
int main(void) {

initRobotBase();

//Variablendeklaration
char puffer[6];

//Eingabe

//Verarbeitung
writeString_P("Moin\n");

puffer[0]= 'H';
puffer[1]= 'A';
puffer[2]= 'L';
puffer[3]= 'L';
puffer[4]= 'O';
puffer[5]= 0;

writeString(puffer);
writeString_P("\n");


return 0;
}



Gruß

mic

Robbe64
10.01.2008, 20:22
Ah, danke! Bei Java gibts das nicht^^