-
Thread
Compiler-Error xy-ungelöst
nach einer sinnvollen Option. Aber mir ist noch was aufgefallen und hoffe mal es stimmt: [c] [...] string[i] = c i++ } while (c != 'n' && i < l-string - 1); //Ende von do-while-Schleife string[i] = '\0' [/c] So steht es bei mir im Code, nun folgendes: Sieht mein String durch die
string[i] = c; i++; } } while ( c != 'n' && i < l-string - 1 ); string[i] = '\0'; [/C] jetzt ist der '\n' nicht mehr Teil des Strings :-)
-
Thread
String[i] an einen String [20] hängen!
strcat sollte das eigentlich möglich sein. Was jedoch nicht > ganz richtig ist, dass du deine beiden C-Strings direkt im erstem > Zeichen "null-terminierst". Damit wird strcat nichts anfangen können. warum nicht, was ist denn bei dir ein leerer String?
// set last char to \0 termination s_[newLength] = '\0'; } // set new string length slength = newLength; }; [/c]
-
Thread
C# Performence-Frage
Zeile in die_erste_Liste.dataset.Tables[0].AsEnumerable() where (Zeile.Field<string>("EineSpalte").ToString().Contains(Inhalt) == true) && (Zeile.Field<string>("EineandereSpalte").ToString() == Inhalt2) select Zeile; > Sortiere doch mal die Listen 1 und 2 und
Eclipse zu gewöhnen und habe eine Mickeymausversion von einem vergleichbaren Problem in dreckigem C++ (kann kein C#) getippt, die *ein wenig* schneller läuft.
-
Thread
[C++] Verschiebekonstruktor
m_name; }[/c] Legst du jedes Mal eine Kopie an. [c] const std::string& getName() const{ return m_name; }[/c] wäre effizienter. Der Aufrufer kann falls nötig immer noch eine Kopie anlegen
schrieb im Beitrag #7199794: > Ah, wenn ich den Standardkonstruktor ändere zu Besser wäre: [c]SimplerName(std::string s = "Oskar") : m_name (std::move (s)) {}[/c] Dann noch zusätzlich, um explizit eine Kopie anzufordern: [c]SimplerName(const std::string& s) : m_name (s) {}[/c] Vermeidet
-
Thread
Schieberegister in C zur Stringauswertung
machen da bei den Hexwerten alles vorkommt. Jetzt dachte ich mir ich könnte in die Kommunikation Strings einpacken, die dann etwas steuern sollen, zum Beispiel abbruch ect. Damit diese Strings eindeutig idendifiziert werden können, dachte ich mir das diese irgenwie so aussehen sollten: "<<stop>>",
Anfang. Wenn nach dem Inkrementieren der Zeiger auf ein '\0'-Zeichen zeigt, hast du einen kompletten String gefunden. > Ich dachte eher an so etwas dass ein Schieberegister für ca 10 Byte > vorgesehen ist und wenn dann in diesen 10 Byte ein String übereinstimmt > => Aktion, ansonsten ältestes Byte raus
-
Thread
Programmiersprachen jenseits von "C"
. Vor randalierenden Pointern, unterminierten Strings, Arrayzugriffen ins Leere kann C prinzipbeding nicht schützen.
vn nn schrieb im Beitrag #5650549: > Vor randalierenden Pointern, unterminierten Strings, Arrayzugriffen ins > Leere kann C prinzipbeding nicht schützen. Als ob es bei C++ keine Probleme gäbe ;)
-
Thread
C++ lokale static variable in Member
einer unübersichtlichen Funktion versteckt, kann man seinen Nachfolgern lustige Fallen stellen: [c] #include <iostream> #include <string> class Knopf { std::string name; public: void drueck() { static size_t aufrufe = 0; ++aufrufe; std::cout << "Knopf "
auch ein weiterer Grund, warum Templates in der Deklaration auch implementiert werden müssen. [c] #include <iostream> #include <string> template <int templateparameter> class Knopf { std::string name; public: void drueck() { static size_t aufrufe = 0; ++aufrufe
-
Thread
C->LCD-> Im Menü scrollen
Du in eine Zeichenkonstante. Unter Linux erzeugt dies reproduzierbar einen Segmentation fault: [c] void myfunc (void) { char * ui = "\0\0"; ui[0] = '0'; // hier knallts printf ("%02x %02x\n", ui[0], ui[1]); } [/c] Um sicherzustellen, dass Dein String ui tatsächlich terminiert
Programmierfehler? Eigentlich kann das weg. Wenn Du es doch behalten möchtest, dann schreibe statt: [c] uiActualMenuePos = 5 ; [/c] besser [c] uiActualMenuePos = __eLCD_MAX_ENTRYS__ - 1; [/c] Apropos: Diese Konstante mit den beiden führenden Unterstrichen, kommt diese aus
-
Thread
ascii zu integer mit begrenzung
Summe beider Zahlen ist:\n",string_2); appendstring(string_1, string_2); putstring (string_2); END; } #endif // V1_Aufgabe_1 [/c]
dieses > '\0' Zeichen stösst. Ansonsten kannst du dir auch deine eine strlen bauen, sind 7 Zeilen: [c] int myStrlen(char *string) { char *string_ptr = string; while(*string_ptr) string_ptr++; return string_ptr-string; } [/c]
-
Thread
C TCP / IP String senden
string text = "Hallo heute ist ein schöner Tag"; test_len = strlen(text); send(sock, text, test_len, 0); die Frage ist was string ist - den gibt es bei C/C++ erstmal nicht. Wenn es aber etwas ist was
C++/STL std::string
-
Thread
C++ Monate als Array
schrieb im Beitrag #2658490: > 3. Was heißt "das frisst AVRStudio nicht"? Der Compiler kann zwar C++, aber hat er die üblichen C++ Libraries an Bord? Gibts also einen "string"?
Tjaja schrieb im Beitrag #2658502: > Eine String-Ende-Kennung wäre auch nicht verkehrt...macht die Ausgabe > um einiges leichter ;-) Stimmt. Das ist das tolle C mit dem beschränktem Zeichenvorrat in Strings, um per Flickschusterei mit in der
-
Thread
Serialisierung C#
sein, aber irgendwie habe ich gad einen vor dem Brett. also ich verkürz den obigen Code mal. [c] if (File.Exists(fileName)) { string serializedConfiguration = string.Empty; using (var tf = File.OpenText(fileName)) {
copyConfig = Configuration.Deserialize(serializedConfiguration); } [/c] im obigen Code will ich es so haben, dass er abfragt welche Datei er laden soll und nicht einfache eine Textdateil laden. [c] string s = JsonConvert.SerializeObject(copyConfig);
-
Thread
C++ Ableitung und virtual
i); int id; } class C : public A { public: C(string name, int i) : id(i) {} void init(){ /* class specific init routine */ } } [/code] Nun bekomme ich die Fehlermeldung, dass Klasse C keinen Member id enthält
Torsten R. schrieb im Beitrag #4647919: > wahrscheinlich sollte C von B erben?) Ja, mein Fehler Torsten R. schrieb im Beitrag #4647919: > C(const std::string& name, int i) : A( name ) {} Müsste ich hier dann: [code] C(const std::string& name, int i) : B
-
Thread
Newbiefrage zu C-Typdeklarationen
Ich beginne gerade erst, mich mit C auseinanderzusetzen und habe noch einige Verständnisprobleme bei der Deklaration und Verwendung von Strings. Folgender Hintergrund: Ich möchte einen String Zeichen für Zeichen in ein LCD-Display schreiben
Ein String ist in C ein Array von chars. Das Stringende wird i.d.R. durch das Zeichen '\0' (null) gekennzeichnet. Näheres dazu liest man am besten im Buch "Programmieren in C", Kernighan & Ritchie, zweite
-
Thread
C - Zwei Zahlen zu einer Mappen
C", grad, grad_dec); lcd_string(buffertemp); [/c] Auf dem Display steht aber nur "0.0000 C", warum?
grad_dec; therm_read_temperature(&grad, &grad_dec); sprintf(buffertemp, "%d.%04u C", grad, grad_dec); lcd_string(buffertemp); [/c]
-
Thread
C++ Interface->Basisiklasse->Ableitungsklasse
abgeleiteten Klasse implementiert wird. >> > > Ist das wirklich so? Ja. Eine Instanz einer Klasse C "ist-ein" C erst, wenn der Konstruktor von C fertig ist, nicht vorher. Wenn eine Klasse D von C abgeleitet ist, kann der Konstruktor von C keine Methoden von D aufrufen (auch keine virtuellen), weil
... Ich bin jetzt nicht so vertraut mit qt, aber [c] qDebug() << "Bla bla String" << integerMessert; [/c] sollte bestimmt auch gehen und sieht irgend wie "vertrauter" aus ;-)
-
Thread
Interesse an Platinen für HAP-Control-Unit?
^C joern@joer:/opt/hap/bin$ sudo ./hap-scheduler.pl ^C joern@joer:/opt/hap/bin$ joern@joer:/opt/hap/bin$ sudo ./hap-configserver.pl [debug] Debug messages enabled [debug] Statistics enabled
in concatenation (.) or string at /opt/hap/bin/helper/../../lib/HAP/ConfigBuilder.pm line 131. Use of uninitialized value in concatenation (.) or string at /opt/hap/bin/helper/../../lib/HAP/ConfigBuilder.pm line 134. DBD::mysql
-
Thread
"Bessere" T6963c Library
); T6963cPutStringXY(0, 0, "Dies ist eine doch sehr lange Reihe "); T6963cPutStringXY(1, 1, "Dies ist eine doch sehr lange Reihe "); T6963cPutStringXY(2, 2, "Dies ist eine doch sehr lange Reihe "); T6963cPutStringXY(3, 3, "Dies ist eine doch sehr lange Reihe "); T6963cPutStringXY(4, 4, "Dies ist eine doch sehr lange Reihe "); T6963cPutStringXY(5, 5, "Dies ist eine doch sehr lange Reihe "); T6963cPutStringXY(6, 6, "Dies ist eine doch sehr lange Reihe "); T6963cPutStringXY
-
Thread
Array über konstante C-String im Flash
Ich hoffe dir hilft das Beispiel weiter: [c] void uart_putstring_progmem (PGM_P pString) { uint8_t ch; while ( (ch=pgm_read_byte(pString++)) != 0 ) uart_putchar(ch); } /* --- uart_putstring_progmem --- */ [/c]
im Beitrag #5004767: > Kannst mal ein Beispiel für eine Funktion zeigen, die sowohl normale > Strings als auch Flash-Strings sendet? [c] void SendStr ( const __memx char *str ) { while (*str) SendChr(*str++); } [/c]
-
Thread
Problem mit Variablen bei C Uhr
ein bisschen übertreiben? Eine führende Null für eine eistellige Zahl könnte man so einbauen: [c] itoa(zahl, buffer, 10); if(buffer[1] == 0x00) lcd_data('0'); lcd_string(buffer); [/c]
lcd_string(buffer); } [/c]
-
Thread
MMC/SD-Karte mit FAT16 an AVR
Du das Null-Byte am Ende des Strings wirklich in der Datei haben? [c] > if(fat_write_file(file, (uint8_t*) write, data_len) != data_len) > { > uart_puts_p(PSTR("error writing to file\n")); > break; > }
der Karte. Momentan schreibe ich aller 100mSec einen String von 150 Byte mit folgendem Befehl auf die Karte. [c] if(fat_write_file(fd, (uint8_t*) sd_buffer, strlen(sd_buffer)) != strlen(sd_buffer)) { uart1_puts("Fehler beim schreiben\n\r"); }
-
Thread
c#: string darf nicht null sein
nach string konvertiere bekomme ich einen Fehler :-( [c] Datensatz.Artikel = currentWorksheet.Cells[i, 3].Value.ToString(); [/c] wie prüfe ich hier nur 'halbwegs übersichtlich' auf null? die mir bekannte
Boris B. schrieb im Beitrag #3363728: > currentWorksheet.Cells[i, 3].Value.ToString() ?? ""; Bin jetzt kein C#-Profi, aber klappt das auch, wenn "currentWorksheet.Cells[i, 3].Value" null ist? ist null.ToString() in C# legal und gibt wieder null zurück, damit der ??-Operator seinen
-
Thread
ANSI C: Position im Text finden
Ansonsten kann man auch bei google "c string functions" eingeben, und erhält 354000000 Ergebnisse z.B. https://beginnersbook.com/2014/01/c-strings-string-functions/ Da müsste man dann denken.
= true; PurgeComm(io_handler_, PURGE_RXCLEAR | PURGE_TXCLEAR); } } } } [/c] [c] string CSerial::ReadSerialPort(int reply_wait_time) { DWORD bytes_read; char inc_msg[1]; string complete_inc_msg; bool began = false; unsigned long start_time = time(nullptr
-
Thread
C++ Membervariablen vom Typ string initialisieren
Hallo Forum! Ist es nötig bei C++, Membervariablen vom Typ string zu initialisieren? Hier ein kurzes Beispiel zu Erklärung: [c] #include <string> #include <iostream> using namespace std; class TestClass { public
; } [/c] Auch ohne die Initialisirung von m_string im Konstruktor funktioniert es bei mir so wie es soll. Aber ist das immer und überall so?
-
Thread
C Anfängerfrage (static innerhalb einer Funktion)
: [c]int main () { GString* str = g_string_new (NULL); str->len = 7; // verboten! g_string_append (str, "foo"); g_string_free (str); }[/c] Diese Nutzung scheint von C-Programmierern akzeptiert
der falsche Zugriff vom Compiler nicht verhindert wird. Das ist m.W. das übliche Schema von OOP in C, es wird in der Doku sogar von "Object" geredet. Wenn man jetzt die "str" Variable global macht: [c]GString* str; int main () { str = g_string_new (NULL); test (); g_string_append (str
-
Thread
Hex to Dec -> C
als int mit Wert 84[Dec] was einer 54[Hex] entspricht. Ah ok, also BCD. Wie wäre es so? [c]OutVal = (BCDVal >> 4) * 10 + (BCDVal & 0x0F);[/c]
michael_ schrieb im Beitrag #7307094: > Selbst in Assembler genügen da weniger als 10 Zeilen. in C reicht: [c] x-=(x/16)*6; [/c] für den TO, wenn der Wert in x bleibt
-
Thread
einzelne Zeichen aus String auslesen in C
Peter wrote: > void sendString( const char* s ) { > for( unsigned int i = 0; i<strlen(s); ++i ) { > lcdputchar( tmps[i] ); > } > } Idee is natürlich absplut korrent, aber ich glaub, das is umständlich und in C
Alllsssooo... Du hast einen String z.B. "Test" - nicht das, was in deiner Anfrage steht. Und ein String ist in C ein Array von char - wobei in C ein Array durch einen Zeiger auf das erste Element repräsentiert ist: char text[]; /
-
Thread
LCD nicht nur für einen Port in C
Habe zwar die LCD-Routine aus dem AVR-GCC-Tutorial mit Erfolg getestet: Lcd.c: [c] #include <avr/io.h> #include "lcd-routines.h" int main(void){ lcd_string("Hello World!"); while(1); return 0; } [/c] Leider habe ich aber eine vorgegebene Hardware, an der RS
Mustermann wrote: > Habe zwar die LCD-Routine aus dem AVR-GCC-Tutorial mit Erfolg getestet: > Lcd.c: > [c] > #include <avr/io.h> > #include "lcd-routines.h" > int main(void){ > lcd_string("Hello World!"); > while(1); > return 0; > } > [/c] > > Leider habe ich aber eine vorgegebene
-
Thread
C/C++ Dateiverarbeitung
Hallo zusammen, ich benötige von ein paar C/C++-Spezialisten Hilfe. Ich habe eine Textdatei (datei.txt), die folgend aufgebaut ist: anl1 anl1 anl1 anl2 anl2 anl2 anl3 Es sei hier erwähnt, dass der Inhalt der Datei variabel ist,
Thomas C. schrieb im Beitrag #6015045: > Alternativ habe ich folgende Funktion geschrieben, bei der ich nun nicht > weiterkomme. > > using namespace std; > string str = {file_anlage}; > >
-
Thread
Zuweisungsproblem in c
IMHO sprintf auch gleich den entsprechenden Pointer übergeben. Wenn man nämlich für mehr als einen String relay_index_c_char (quasi als temporäre Variable) benutzt, hat man am Ende ein Feld, dass auf eine einzige Variable zeigt und alle Feldeinträge hätten den gleichen Inhalt.
@sam Ooops. Hab ich gar nicht geschnallt, dass du da ja mit Strings arbeitest. Dann kannst (oder solltest) du auch strcpy benutzen, so wie man halt in C mit Strings arbeitet. @Rahul > ppspec müsste ein Array aus char* sein Sei vorsichtig. Je nach dem wie
-
Thread
BASCOM vs. C Gesperrt
BASCOM. Ich meine aber C lernen ist ein Muss (was für ein C auch immer)! Das schöne an C ist, dass es standardisiert ist - was bei BASIC nicht der Fall ist, danz zu schweigen von den Visual Geschichten (VB und REALBasic).
Danke für eure Antworten. >Ich meine aber C lernen ist ein Muss (was für ein C auch immer)! Genau das ist der Grund warum ich auf C umsteigen will. An der FH hatten wir nur µC in Assembler programmiert und C und C++ für Windows Anwendungen
-
Thread
C#: Regex für C-Funktion Parameterliste
(Es ist geprüft das der String valider C Code ist - das muss ich nicht prüfen) [c] string parameter = "Blub* st, void (*func) (void*), int test, const unsigned char** in" [/c] moechte ich so zerlegen [c] "Blub*" -
var match = reg.Match(p); var type = matchs2.Groups[1].ToString(); var name = matchs2.Groups[2].ToString(); } [/c] jemand eine nette Idee?
-
Thread
C# Anfängerfrage zu String
Hallo Leute, aus einem Beispiel der C#-Referenz habe ich folgendes Codesschnipsel: [code] string[] words = {"the", "fox", "jumped", "over", "the", "dog"}; [/code] kann mir das mal bitte jemand kurz erklären? Wird
Michael schrieb im Beitrag #3007084: > Hallo Leute, > > aus einem Beispiel der C#-Referenz habe ich folgendes Codesschnipsel: > > [code] > string[] words = > {"the", "fox", "jumped", "over", "the", "dog"}; > [/code] > > kann mir das mal bitte jemand kurz erklären
-
Thread
Programm-Debugging in C#
C/C++ oder ob das managed in C#, Java, sonst was ist, wenn die (Zugangs-)Daten auch nur an einer Stelle unverschlüsselt verarbeitet werden, können sie dort auch mitgelesen werden.
Arc Net schrieb im Beitrag #2673306: > Nein, unabhängig davon, ob das eine natives Programm in C/C++ oder ob > das managed in C#, Java, sonst was ist, wenn die (Zugangs-)Daten auch > nur an einer Stelle unverschlüsselt verarbeitet werden, können sie dort > auch mitgelesen werden. auch, dass
-
Thread
Problem mit string.
mmcu=atmega128 -Wall -gdwarf-2 -O0 -fsigned-char -MD -MP -MT martin_text.o -MF dep/martin_text.o.d -c ../martin_text.c ../martin_text.c: In function `main': ../martin_text.c:57: error: 'for' loop initial declaration used outside C99 mode make: *** [martin_text.o] Error 1 Ich habe statt dem for
Der C99 Fehlermeldung bin ich nachgegangen und danach die Source wieder abgeändert: [C] #if 1 { int ci; for(ci=0; text[ci] != '\0'; ++ci) { putch(text[ci]);
-
Thread
c/c++ array in bereits reserviertem Speicher anlegen
Ram). Jetzt zum Thema: ich möchte in diesem Bereich, der ja bei preallocateBuffer beginnt, ein String oder c-String array anlegen für die Titelliste der SD-Card. Das darf beim Umschalten auf Stream-Play gern überschrieben oder entfernt werden, es kann bei SD-Card-Start neu angelegt und/oder neu
Objekte, die per placement new erzeugt wurden. Du brauchst einen expliziten Destruktor-Aufruf: [C] buff->~AudioFileSourceBuffer(); [/C] > Bei SD-Card wird das nie aufgerufen, ich hätte dort dann eben gern ein > String titelliste[500]; > oder auch ein Array[500] of Char-Arrays[100]; > angelegt
-
Thread
Größe von String herausfinden
hat: [c]void function(std::string myStr) { std::cout << "Mein string ist " << myStr.size () << " Zeichen lang.\n"; } int main() { function("Hallo"); return EXIT_SUCCESS; }[/c]
nur einen Zeiger auf ein Array, das Elemente vom Typ Char enthält. Du kannst also die Länge des Strings nur dann erkennen, wenn sie aus dem String selber erkennbar ist, z. B. wenn der String nullterminiert ist. Wenn Du z. B. einen Aufruf machst [c] function("ABC"); [/c], dann übergibt der Compiler
-
Thread
com schnittstelle mit c ansprechen
im Anhang lesen.c
0x00 oder '\0') am Ende versehen, angezeigt: printf (TEXT("\r\n\tRxD (%d Byte(s)): %s"), dwRead,InString); und zurückgesendet: WriteFile (hCom, &InString, dwRead, &iBytesWritten, NULL); Das Anzeigen kannst Du nach eigenen Wünschen verändern, das Zurücksenden weglassen. Sind die Daten von µC denn
-
Thread
C++: "dynmisches" new durch Objekte aus XML-Datei. Möglich?
Ich glaube nicht das das mit C/C++ geht, ausser mit dem einem grossen case construct. Für soetwas ist .net oder java besser geeignet. Dort gibt Object aus "strings" generieren. object = new GetClassOf("klassen name"); (ist nur
std::string& typeString = "", Basis* typeTemplate = NULL ) : typeString_( typeString ), typeTemplate_( typeTemplate ) {} std::string typeString_; Basis* typeTemplate_; }; [/C]
-
Thread
ESP32-C3 als Accesspoint - wie fehlersicher machen?
Dieser werden 5k Stack zu geordnet. Nemopuk schrieb im Beitrag #8019425: > Die sind mit > String-Operationen schnell gesprengt. String Instanzen belegen nur wenig Stack. Die (inneren) Strings landen auf dem Heap.
Arduino F. schrieb im Beitrag #8019435: > String Instanzen belegen nur wenig Stack. > Die (inneren) Strings landen auf dem Heap. Ja stimmt. Ich meinte auch nicht speziell die String Klasse, sondern das Bearbeiten von Zeichenketten allgemein.
-
Thread
Parameter string
einem String wie "AAA" bewirken? Das ist keine Zahl... [c]void wandleString (const char* str) { for (const char* p = str; *p; ++p) { // Hier ist *p das aktuelle Zeichen } }[/c]
oder ist das kompletter Unsinn? Es ist kompletter Unsinn, da Du atoi wie folgt verwendest: [c] atoi("string"); atoi("tring"); atoi("ring"); atoi("ing"); atoi("ng"); atoi("g"); [/c]
-
Thread
Speichern von Strings
im ersten Zeichen des Strings nach dem Ende.
Das hier [C] c = uart_getc(); if ( c & UART_NO_DATA ) { //Keine Daten //Mach was } else { while( ( c = uart_getc() ) != '\r' && i < BufferLen - 1 )
-
Thread
GPS - MOUSE - MINI- NAVIGATOR (Assembler) ATmega8
Hallo, hat die Entfernungsberechnung schon jemand in C umgesetzt? Gruß Gerd
an mehr oder weniger "fiesen Tricks" mehr. Lehrreich ist, sich den ASM-Code anzusehen, den der C-Compiler erzeugt. (Häufig übersetzen C-Compiler den C-Code in asm und der wird dann durch den Assembler geschickt, z.B. gcc.)
-
Thread
Probleme mit Berechnung (C)
= reftemp[count]-reftemp[count])*(temperatur-reftemp[count]))+((count*5)-30); [\C] Hieraus wird dann der Temperaturwert berechnet. (Temperatur ist der ADC-Wert). [C] char string[4]; dtostrf(tem,4,1,string); for (uint8_t i=0; i<4; i++) { loop_until_bit_is_set(
= reftemp[count]-reftemp[count])*(temperatur-reftemp[count]))+((count*5)-30); [/C] Hieraus wird dann der Temperaturwert berechnet. (Temperatur ist der ADC-Wert). [C] char string[4]; dtostrf(tem,4,1,string); for (uint8_t i=0; i<4; i++) { loop_until_bit_is_set(
-
Thread
C#: Exception Message
die komplette Exception Message ausgeben können. Wie müsste ich die Klasse erweitern, damit der String msg ausgegeben werden kann. Im Konstruktor kann der string ja nicht ausgeben werden. [c] class MyExeptionMessage { public MyExeptionMessage(Exception exception) {
(meineException e){ Console.WriteLine(e.ToString()); } } [/c] Beachte an der Stelle macht .ToString() genau das, was du da oben in deinem Code machst. Es Schmeißt die kompletten Daten einer Exception in einen String rein.
-
Thread
[C++] Telnet Server
das \n nach dem hi steht dort [code] * hi * [/code] dann hat man 2 Stück \n im String, eines davor und eines dahinter * am besten wäre es allerdings den kompletten String als ASCII Codes auszugeben. Dann sieht man auf jeden Fall jegliche Sonderzeichen [C] if( Befehl=="hi\n") [/C] Das ist ungeschickt. Sonderzeichen wie \n oder \r entfernt man aus dem String ehe die Auswertung losgeht. Auch führende und nachfolgende Leerzeichen. Ansonsten wird dein Benutzer keine Freude haben
-
Thread
Altes C++ VS Programm mit Eclipse Debuggen
#6432050: > Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. > (Ja string und cstring hab ich inkludiert. Hat nichts genützt) Selbstverständlich verfügt der GCC, oder besser gesagt: die C-Standardbibliothek über diese Funktionen. Was ist denn die Fehlermeldung?
schrieb: >>>> Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. >>>> (Ja string und cstring hab ich inkludiert. Hat nichts genützt) >>> >>> Selbstverständlich verfügt der GCC, oder besser gesagt: die >>> C-Standardbibliothek über diese Funktionen. >>> >>> Was ist denn die
-
Thread
pointer auf string funktioniert nicht
Hallo, ich komme nicht weiter. Ich will ein LCD Display ansteuern. Es soll einen string anzeigen. Die Länge wird richtig erkannt aber der Inhalt ist Blödsinn. Ich rufe die routine im main.c so auf: [c] unsigned char CHAR[20]; strcpy( CHAR, "HALLO" ); lcd_display_string(*CHAR)
Bist du dir sicher, das du C (oder C++) programmierst? Was kommt bei [c]lcd_display_string("Hallo!");[/c] raus?
-
Thread
Gesucht: Bus-System um mehrere uC zu vernetzen
keinen LAN Anschluss, weil der uC STM32F4xx nicht genug Ressourcen hat. SPI, I2C, LIN, ModBus, und weitere, auch ältere Bussysteme sind mir bekannt, aber ich müsste einen recht umfangreichen Protokollstack schreiben, damit man die
c-hater schrieb im Beitrag #6862343: > Dann kann man auch gleich die Adresse mit im EEPROM speichern... Bzw einen Hash Code des Strings zur Adresse machen.
-
Thread
C++ Ansatz um Datei zu parsen
Hallo zusammen, ich schreibe grade an einem Programm, und da ich langsam aber sicher von C weg will übe ich mich dabei in C++. Die Syntax und das Objektorientierte Paradigma sind mir schon klar. Was mir eher fehlt sind Konzepte, wie man bestimmte Problemstellungen löst, die ich in "plain-C
Umsetzung würd ich schon hinkriegen, allerdings solls schon irgendwie C++ Style sein, sonst könnt ich auch gleich bei C bleiben... Wie würdet ihr das lösen?