Archiv verlassen und diese Seite im Standarddesign anzeigen : Asuro soll die Werte von Variab über Hyper terminal ausgeben
Frage
Es ist ja möglich den aktuellen Wert der Liniensensoren über Hyper Terminal auszugeben
ist es auch möglich den aktuellen Wert von LANG auszugeben
Hier ein Programm
#include <asuro.h>
int main(void)
{
Init();
int LANG = 0,x = 0;
while( 1 )
{
x=x+1;
if (x > 1000)
LANG=LANG+1;
if (x > 1000)
x=0;
//Hier steht dann das Programm
if ( LANG > 200)
LANG=0;
}
return 0;
}
Was ich möchte, ist das ich wärend das Programm abläuft über Hyper T nachsehen kann welchen Wert LANG gerade besitzt
müsste eigentlich gehen oder
the.speciali
22.11.2010, 19:43
Wie schon im anderen Thread gesagt. SerWrite benötigt einen String bzw Char. Denn muss man erst mit dem "itoa" Befehl umwandeln :)
beste Grüße
the.speciali
ok danke dann versuch ich mal den code umzuschreiben
mfg
#include "asuro.h"
#include "stdlib.h"
int main(void)
{
unsigned int LANG[1];
char LANG[4];
int t,LANG,x;
Init();
StatusLED (GREEN);
FrontLED (ON);
while (1)
{
itoa (LANG, 4);
SerWrite (LANG, 4);
SerWrite (" LANG\n\r", 7);
for (t=0; t< 100; t++)
{
Sleep (72);
}
x=x+1;
if (x > 1000)
LANG=LANG+1;
if (x > 1000)
x=0;
if ( LANG > 200)
LANG=0;
}
}
So ungefähr oder?
Ich habe mal statt data 1/2 LANG genommen eber es kommen fehlermeldungen error........ .
mfg
the.speciali
22.11.2010, 22:13
Die Referenz von C sei dir nahe gelegt: klick hier (http://www.cplusplus.com/reference/clibrary/cstdlib/itoa/). Sollte alles drin stehen.
Und eine bitte: Schreibe das nächste mal den Quellcode in [ c o d e ] [ / c o d e ] Tags (ohne leerzeichen), der Thread bleibt dann um einiges übersichtlicher.
beste Grüße
the.speciali
#include "asuro.h"
#include "stdlib.h"
int main(void)
{
unsigned int data[2];
char data0[5], data1[5];
int t,LANG,x;
Init();
while (1)
{
x++;
if (x > 1000)
LANG=LANG+1;
itoa (LANG, LANG, 5);
//itoa (data[1], data1, 5);
SerWrite (LANG, 4);
SerWrite (" links\n\r", 8);
//SerWrite (data1, 4);
//SerWrite (" rechts\n\r", 9);
for (t=0; t< 100; t++)
{
Sleep (72);
}
if(LANG > 500)
LANG=0;
}
}
Die Fehlermeldungen habe ich jetzt weg aber er sendet immer nur links links...........
Kannst mirs bitte sagen ich habs nicht so mit englisch
Den daten führ Links werden nicht gesendet weil dieze zeilen 'ausgeschaltet' sind. Den "//" Zeichen sagen den Kompiler das was dannach kommt auf die selbe Zeile ignorriert werden soll. Data1 wird nicht umgewandelt zu char oder Zeichenketten, und diese deshalb auch nicht gesendet.
Ja weiß ich ein Komeentar
Ich hatte zuvor ein Programm das die Werte von den Liniensensoren überträgt aufs Hyper T
Ich habe das was ich nicht brauche in // getan damit ich sehe wie es zuvor ausgesehen hat
Aber jetzt möchte ich das der wert der Variable LANG übertragen wird weil wenn ein Programm nicht funkt weiß ich wo es stehen bleibt
mein Problem ist das immer
LANG
LANG
LANG
LANG
LANG
LANG
übertragen wird ich möchte aber das der Wert auch dabei steht
Ich habe es jetzt so
#include "asuro.h"
#include "stdlib.h"
int main(void)
{
unsigned int data[2];
char data0[5], data1[5];
int t,LANG,x;
Init();
while (1)
{
x++;
if (x > 1000)
LANG=LANG+1;
itoa (LANG, LANG, 5);
//itoa (data[1], data1, 5);
SerWrite (LANG, 4);
SerWrite (" LANG\n\r", 7);
//SerWrite (data1, 4);
//SerWrite (" rechts\n\r", 9);
for (t=0; t< 80; t++)
{
Sleep (72);
}
if(LANG > 500)
LANG=0;
}
}
Ich weiß auch nicht genau wie das vorher funktioniert
hat mit data[1] und data kann mir das jemand erklären
LG
...
itoa (LANG, LANG, 5);
//itoa (data[1], data1, 5);
SerWrite (LANG, 4);
SerWrite (" LANG\n\r", 7);
...Den Umwandlung von den Variable in einem Zeichenketten mit itoa geht Falsch. Du wandelst ein int variable um in einer int, statt ein char array (wie data0 und data1). Ich wundere mich wieso das keine Fehlermeldung beim Kompilieren gegeben hat. Ich kann nicht glauben du hast keiner bekommen. Und ein int variable senden mit SerWrite soll auch nicht funktionieren.
the.speciali
01.12.2010, 14:33
Wie schon Valen sagte das was du da machst ist falsch. Du bräuchtest sowas wie "char langC[5]" und dann "itoa (LANG, langC, 10)".
beste Grüße
the.speciali
OK
kann ich da auch statt char langC[5]
cahr langB[5] nehmen
Und ist der [5] weil es 5 Byte sind oder
Also wenn ich statt LANG X ausgeben will muss ich char xB[2] schreiben oder
Habe es jetzt so weit aber noch nicht ganz fertig
[/code]#include "asuro.h"
#include "stdlib.h"
int main(void)
{
unsigned int LANG;
char langC[5];
int t,x,LANG;
Init();
StatusLED (GREEN);
FrontLED (ON);
while (1)
{
itoa (LANG, LangC, 10);
SerWrite (LangC, 4);
SerWrite (" LANG\n\r", 7);
for (t=0; t< 100; t++)
{
Sleep (72);
}
x++;
if (x > 1000)
LANG++;
if (x > 1000)
x=0;
if (LANG > 1000)
LANG = 0;
}
}
LG
OK
kann ich da auch statt char langC[5]
cahr langB[5] nehmen
Und ist der [5] weil es 5 Byte sind oder
Also wenn ich statt LANG X ausgeben will muss ich char xB[2] schreiben oder
LgDas erste: Ja, du kannst jeder Nahme wahlen.(das nicht schon bekannt ist in dem C-sprache) Aber ich vermute the.speciali slagt "langC" vor weil die C vielleicht steht führ char. Dann weisst du später wieder welcher type von Variabele das ist.
Das letzte verstehe ich nicht. Kannst du das weiter erklären? Jedenfalls, wan du einer (Zeichenketten) Variabele deklarieren möchtest schreibst du nur einen mal:
char nahme[grosse in Bytes];
Wan du auf einer bestimmte Zeichen in dem Ketten ziehlst schreibst du: (zbs.)
langC[2]='b'; // den dritte Zeichen im langC wird einer 'b'. Weil [0] das erste Zeichen ist.
ja ist klar danke
Was ist hier noch falsch ?
#include "asuro.h"
#include "stdlib.h"
int main(void)
{
unsigned int LANG;
char langC[5];
int t,x,LANG;
Init();
StatusLED (GREEN);
FrontLED (ON);
while (1)
{
itoa (LANG, LangC, 10);
SerWrite (LangC, 4);
SerWrite (" LANG\n\r", 7);
for (t=0; t< 100; t++)
{
Sleep (72);
}
x++;
if (x > 1000)
LANG++;
if (x > 1000)
x=0;
if (LANG > 1000)
LANG = 0;
}
Ein fehler ist LangC und langC
juhu
nur noch
test.c:9: error: conflicting types for `LANG' // irgendwas widerspricht sich
test.c:7: error: previous declaration of `LANG'
the.speciali
01.12.2010, 21:09
Valen hat das mit den Variablen super erklärt:)
Aber zum jetzigen Problem: da steht schon der Fehler da, conflicting typs und pervious declaration! Schau mal oben bei der Variablen deklaration: du verwendest einmal unsignet int für LANG und einmal ein einfaches int.
Ps: die Zahl am Anfang in der Fehlermeldung gibt die Zeile an in der der Fehler ist;)
...
char langC[5];
...
itoa (LANG, LangC, 10);
...
Ich weiss nicht ob du einer derartigen Fehler bekommen hat, aber etwas in in einer Variabele schreiben das nicht passen kann muss Problemen geben. Etwas von 10 Zeichen in einer Speicher platz von 5 Zeichen speichern geht nicht. Solcher fehler habben manche Virussen und Worms eine Tur zu Windows Betriebsystemen gegeben. ;)
Wow ich habe gerade gedacht ich machs einfach weg und dann auf einmal
> Process Exit Code: 0
Dann wollt ich es posten und lese deinen Beitrag
juju habe dazu gelernt so merke ich s mir länger
Aber danke für die antwort
ja vorfreude ist die größte Freunde
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
33 LANG
sendert er immer aber wieso
der Wert müsste ja größer werden
Erst mal, was denkst du das den Anfangswert von LANG und x ist beim Programmstart? Das ist wichtig für deine Begriff.
Es wird großer, aber nur nach den 1000-ste mal das gesendet zu haben. Und mit nur 2400 Baud dauert es eine weile. Es macht nur ein Erhöhungen von LANG jeder 1000 Erhöhungen von x. Und jeder Erhöhung von x wird es gesendet.
Ich fürchte es stimmt immer noch nicht mit dein itoa Befehl. ( wegen das 33undnochetwas das gesendet wird) Bitte zeige wieder deine gesamte Code.
#include "asuro.h"
#include "stdlib.h"
int main(void)
{
unsigned int LANG =0;
char langC[5];
int t=0,x=0;
Init();
StatusLED (GREEN);
while (1)
{
itoa (LANG, langC, 10);
SerWrite (langC, 4);
SerWrite (" LANG\n\r", 7);
for (t=0; t< 100; t++)
{
Sleep (72);
}
x++;
if (x > 1000)
LANG++;
if (x > 1000)
x=0;
if (LANG < 50)
{BackLED(OFF,OFF);
StatusLED(RED);}
if ((LANG > 50) && (LANG < 150))
{ BackLED(ON,ON);
StatusLED(GREEN);}
if (LANG > 150)
LANG = 0;
}
return 0;
}
wenn ich diesen Teil entferne funkt es (Die lichter blinken)
itoa (LANG, langC, 10);
SerWrite (langC, 4);
SerWrite (" LANG\n\r", 7);
for (t=0; t< 100; t++)
{
Sleep (72);
}
ich weis das mit der verzögerung ich mach alle Programme so
Lg
wenn ich diesen Teil entferne funkt es (Die lichter blinken)
itoa (LANG, langC, 10);
SerWrite (langC, 4);
SerWrite (" LANG\n\r", 7);
for (t=0; t< 100; t++)
{
Sleep (72);
}
Mit diesem Teil zählt LANG nicht mehr und die S.LED leuchtet immer rot
ich weis das mit der verzögerung ich mach alle Programme so
Lg
Gut, du hast den Anfangswert nun gut initialisiert. Man kann nicht darauf verlassen das alle Speicherplatzen eine bestimmte wert haben beim start. Immer selb einer wert geben, oder sicher sein das einer Funktion das macht, vor das einer logische Entscheidung darüber gemacht wird.
Leider hast du diese meiner Berichten noch nicht gesehen oder verstanden:
https://www.roboternetz.de/phpBB2/viewtopic.php?p=528439#528439
...
char langC[5];
...
itoa (LANG, LangC, 10);
...
Ich weiss nicht ob du einer derartigen Fehler bekommen hat, aber etwas in in einer Variabele schreiben das nicht passen kann muss Problemen geben. Etwas von 10 Zeichen in einer Speicher platz von 5 Zeichen speichern geht nicht. Solcher fehler habben manche Virussen und Worms eine Tur zu Windows Betriebsystemen gegeben. ;)
Diese Antwort oder
Das verstehe ich doch nicht ganz
#include "asuro.h"
#include "stdlib.h"
int main(void)
{
unsigned int LANG =0;
char langC[10];
int t=0,x=0;
Init();
StatusLED (GREEN);
while (1)
{
itoa (LANG, langC, 5);
SerWrite (langC, 4);
SerWrite (" LANG\n\r", 7);
for (t=0; t< 100; t++)
{
Sleep (72);
}
x++;
if (x > 1000)
LANG++;
if (x > 1000)
x=0;
if ((LANG > 1) && (LANG < 50))
{BackLED(OFF,OFF);
StatusLED(RED);}
if ((LANG > 50) && (LANG < 150))
{ BackLED(ON,ON);
StatusLED(GREEN);}
if (LANG > 150)
LANG = 0;
}
return 0;
}
Habe es auf char langC[10]; geändert
vorher wars char langC[5];
Du hast recht. Ich hab mir ge-irrt mit den 10. Das ist den Zahlsystem-basis, nicht ein Anzahl von Zeichen in den Zeichenketten. Bitte entschuldigung. Es wird Zeit fuhr mich schlafen zu gehen.
Wennst du noch ne Idee hast kannst es mir ruhig sagen
ich freue mich sehr!!!!!!!!!
the.speciali
02.12.2010, 23:12
Mach mal beim itoa trotzdem 10 herein, es ist das Zählsystem wie schon Valen oben sagte. und SerWrite eine Zeile drunter (langC, 6). Da langC 5-werte groß ist. Aber so langsam bin ich auch mit meine Latein am Ende.
Auch frage ich mich so recht wo der Sinn hinter diesem Programm ist^^
Eine Kritik am Rande: Du "kämpfst" so wie ich die Threads hier sehe an 3 Fronten gleichzeitig und forderst von uns mehr oder weniger das wir dir alles auf einem Silbertablett präsentieren. Auch wir haben zwar mal so angefangen wie du, doch wir haben uns Tage- oder Wochenlang durch Dokumentationen gewühlt, Suchanfragen gestartet etc. Auch wenn uns Englisch nicht liegt, wozu gibt es denn Wörterbücher;)
Verstehe die Kritik nicht falsch, aber in der Robotik muss nun mal auch vieles selber erarbeitet werden und nur dann kommt man auch wirklich weit!
beste Grüße
the.speciali
Ja das stimmt zu Teil aber ich spiele mich in der ganzen freizeit mit Proggen und schaue auch in anderen Themen nach obs da was gibt aber finde nicht so das wirklich passende
Ich probiere auch sehr viel aus schau auch hin und wieder im LEO-Wörterbuch wenn ich einen Fehlercode nicht verstehe
Ich versuche auch so wenig wie möglich themen zu poste aber wenn ichnicht mehr weiter weiß frag ich hald da
Der sinn ist, wenn ein Programm nicht funkt oder hängen bleibt damit ich sehen kann wo genau es steht oder dass ich ca. geschwindigkeiten sehen kann
LG
Ich habe das jetzt so geändert und auch noch andere Zahlen probiert
aber ich habe das Problem das er immer NULL anzeigt.
Wenn du noch was weißt mögest du mir es kurz schreiben
Bitte
Lg
Ich kenne den Asuro und auch C nicht gut genug aber wenn ich Fehler suche dan wenn möglich mit einem Simulator im Einzelschritt Modus.
AVRstudio ist kostenlos......
http://www.robomodules.de/portal/index.php?id=199
Gruß Richard
hier hab ich zwei mehr oder weniger gute Vorschläge für dich:
1. Ich hatte vor nicht alzu langer zeit das selbe problem und hab es wie folgt gelöst. die meisten hier würden mir glaub ich den kopf abreisen,aber hey es funktioniert. Falls du nichts mit sprintf anfgangen kannst. Goggle ist dein Freund und helfer.
#include "asuro.h"
#include <stdio.h>
int main() {
int i = 10;
char aC[2];
Init();
sprintf(aC, "%d", i);
SerWrite(aC, 2);
while(1);
}
2. Dieso Lösung hab ich aus der erweiterten lib abgeschrieben. Funktioniert einwandfrei.
#include "asuro.h"
#include <stdio.h>
void UartPutc(unsigned char zeichen) {
UCSRB = 0x08;
UCSRA |= 0x40;
while(!(UCSRA & 0x20));
UDR = zeichen;
while(!(UCSRA & 0x40));
UCSRB = 0x00;
}
void SerPrint(char *data){
unsigned char i = 0;
while(data[i] != 0x00)
UartPutc(data[i++]);
}
void PrintInt(int wert){
char text[7];
itoa(wert, text, 10);
SerPrint(text);
}
int main() {
Init();
PrintInt(10);
PrintInt(200);
while(1);
}
Danke
Das muss ich mir mal genauer ansehen
sprintf(aC, "%d", i);
ist eigentlich das gleiche wie
itoa (LANG, langC, 5);
nur mit sprintf kann ich im Hyper Terminal sehen wie er hochzählt
Habe hier zur Fehlersuche 2 Programme combiniert.
Da das Programm mit bool noch nicht so richtig funkt wollt ich mal schauen wie groß eigentlich "z" ist(wie schnell es zählt)
#include <stdbool.h>
#include <stdio.h>
#include <asuro.h>
int main(void)
{
Init();
char aC[2];
bool blinken = true;
int LANG = 0,z = 0,x = 0, y = 0,t = 0;
if (blinken == true)
{
//Schalter
//Begin Blinktakt Backleds
x=x+1;
if (x > 1000)
LANG=LANG+1;
if (x > 1000)
x=0;
if((LANG > 0) && (LANG < 20))
BackLED(ON,OFF);
if((LANG > 20) && (LANG < 40))
BackLED(OFF,ON);
if ( LANG > 40)
LANG=0;
//Ende Blinktakt Backleds
}
if (blinken == false)
BackLED(OFF,OFF);
while( 1 )
{
y++;
if (y > 1000)
z++;
if (y > 1000)
y=0;
if (z < 20) // Wenn z kleiner 20 ist blinkt es
{ blinken = true;
StatusLED(OFF);
}
if (z > 20)
{ blinken = false;
StatusLED(RED);
}
if (z > 30)
z=0;
sprintf(aC, "%d", z);
SerWrite(aC, 2);
SerWrite (" aC\n\r", 5);
for (t=0; t< 20; t++) //Kurze Pause beim Übertragen
{
Sleep (72);
}
}
return 0;
}
Das Ergebniss:
0 aC
0 aC
0 aC //Edit ich hätte min 30 min warten müssen biss es 1 wird weil y so langsam zählt aber das ist noch nicht das Problem (https://www.roboternetz.de/phpBB2/viewtopic.php?t=57218)
0 aC //EDIT Das problem sind die warnungen oder sind die harmlos
0 aC
Dies 2 warnungen sind gekommen:
sind die harmlos?
test.c:55: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
test.c:56: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
Lg
...
Dies 2 warnungen sind gekommen:
sind die harmlos?
test.c:55: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
test.c:56: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
LgSerWrite (in den originale asuro lib, aber auch den erweiterte lib) erwartet ein Zeiger zu ein 'unsigned char' Zeichenketten. Du hasst ein normales 'char' Zeichenketten deklariert. Das ist vermutlich harmlos. Die Meldung sagt die benutzte Variabele kann eine negative Wert enthalten, aber die erwartete Variabele darf das nicht. Berechnungen auf Zeichenketten macht man nicht (oder kaum, und mit Zeiger noch weniger!), deshalb kann es keine schade machen.
Habe da eine Frage
Habe hier was mit dem Timer getestet
aber er springt nicht von 200 auf 0
#include <stdbool.h>
#include <stdio.h>
#include <asuro.h>
int main(void)
{
Init();
char zC[2];
unsigned char umschaltpunkt;
int LANG = 0,z = 0,y = 0,t = 0,gas = 0;
/************************************************** *****************************************/
while( 1 )
{
if(Gettime() > umschaltpunkt) // Umschaltzeitpunkt überschritten?
{
umschaltpunkt += 1000; // neuen Umschaltzeitpunkt festlegen
z++;
}
if (PollSwitch() == 1)
z=0;
if (PollSwitch() == 2)
z = 90;
if (PollSwitch() == 4)
z = 190;
/************************************************** ********************/
sprintf(zC, "%d", z); //Übertragen
SerWrite(zC, 3); //Übertragen
SerWrite (" zC\n\r", 6); //Übertragen
for
(t=0; t< 40; t++) //Übertragen
{ //Übertragen
Sleep (72); //Übertragen
} //Übertragen
/************************************************** *********************/
if (z > 200)
z=0;
}
return 0;
}
Wenn ich im Hyper Terminal schaue sehe ich das
194 zC
195 zC
196 zC
197 zC
198 zC
199 zC
200 zC
201 zC
11 zC
21 zC
31 zC
41 zC
51 zC
61 zC
71 zC
81 zC
91 zC
10 zC
11 zC
12 zC
13 zC
14 zC
eigentlich soll er von 200 au 0 springen ncht auf 11,21,31,41,51,61....
Weiß jamand wieso das so ist
Lg
Den Sprung von 201 auf 11 kann ich (noch) nicht erklären aber es gibt einiger Programmier-Fehler in dein Programm umsonst.
...
unsigned char umschaltpunkt;
...
if(Gettime() > umschaltpunkt)
{
umschaltpunkt += 1000;
...Du vergleichst ein Gettime Wert (unsigned long) mit umschaltpunkt (ein unsigned char) das bis jetzt noch kein Anfangswert bekommen hat! Ein unsigned long, das von 0 bis 4294967295 zahlen kann, ist oft größer als ein Wert das von 0 bis 255 sein kann. Das letzte ist aber im Prinzip kein Problem. Nur den Anfangswert ist, weil niemand ahnen kann wann das passieren soll.
Den Erhöhung von umschaltpunkt mit 1000 ist aber ein Problem. 1000 ist großer als den maximale wert das es enthalten kan (255). Genau welcher wert es bekommt nach dieses befehl weiss ich nicht genau. Aber es wurde ungefähr gleich sein als ein Reduktion mit 24. (vielleicht einiger werten mehr oder weniger wegen 2-Komplement Rechnung (Wiki) (http://de.wikipedia.org/wiki/Zweierkomplement) ).Das soll sicher Kompilier Fehler oder Warnungen gegeben haben müssen!
Den Sprung von 201 auf 11 kann ich (noch) nicht erklären aber es gibt einiger Programmier-Fehler in dein Programm umsonst.
Kann es sein das es nur den 1nser anzeigt der eigentlich nicht hingehört, weil wenn ich den 1nser wegdenke stimmt es
Habe jetzt das Programm so
#include <stdbool.h>
#include <stdio.h>
#include <asuro.h>
int main(void)
{
Init();
char zC[2];
unsigned char umschaltpunkt = 0;
unsigned int z = 0;
int t = 0;
/************************************************** *****************************************/
while( 1 )
{
if(Gettime() > umschaltpunkt) // Umschaltzeitpunkt überschritten?
{
umschaltpunkt += 200; // neuen Umschaltzeitpunkt festlegen
z++;
}
if (PollSwitch() == 1)
z=0;
if (PollSwitch() == 2)
z = 65500;
if (PollSwitch() == 4)
z = 190;
/************************************************** ********************/
sprintf(zC, "%d", z); //Übertragen
SerWrite(zC, 6); //Übertragen
SerWrite (" zC\n\r", 6); //Übertragen
for
(t=0; t< 40; t++) //Übertragen
{ //Übertragen
Sleep (72); //Übertragen
} //Übertragen
/************************************************** *********************/
}
return 0;
}
EDIT
unsigned int z = 0;
Eigentlich müsste er ja da bis 65 000 zählen oder ?
Aber
32762 zC
32763 zC
32764 zC
32765 zC
32766 zC
32767 zC
-32768 zC
-32767 zC
-32766 zC
-32765 zC
-32764 zC
-32763 zC
-32762 zC
Keine Ahnung wieso das so ist
Was ich möchte ist eigentlich nur
dass:
1. Einen Timer stellen
Dann soll ein int Wert hochgezählt werden(x):
if (timer irgendwo)
x++;
if timer irgendwo
timer = 0 // brauch ich ja oder weil er kann nicht größer wie 255 sein
Da möchte ich dann das Programm reinschreiben
if (x < 20)
FrontLED(ON);
.............
...........
...........
............
Programm ende
...
EDIT
unsigned int z = 0;
Eigentlich müsste er ja da bis 65 000 zählen oder ?
Aber
32762 zC
32763 zC
32764 zC
32765 zC
32766 zC
32767 zC
-32768 zC
-32767 zC
-32766 zC
-32765 zC
-32764 zC
-32763 zC
-32762 zC
Keine Ahnung wieso das so istJa das soll es auch meines Wissen. Wieso das nicht passiert verstehe ich auch nicht.
(Meiner) EDIT:
Laut diese link ist "unsigned int" nicht als standard definiert. Versuch mal mit "unsigned short".
http://www.rn-wissen.de/index.php/C-Tutorial#int.2C_char.2C_short.2C_long_.28ganze_Zah len.29
Wenn ich das ändere und neu rüberspielen möchte schreibt er gleich OK
Also es kennt da keien Unterschied
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.