INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
C-Code für eine substring-Funktion: richtig ?
27.05.2015, 08:54 (Dieser Beitrag wurde zuletzt bearbeitet: 27.05.2015 13:30 von HaWe.)
Beitrag #1
C-Code für eine substring-Funktion: richtig ?
hallo,

weil mein letzter (gefundener) C-Code für eine substring-Funktion (mit pointer und malloc) bei Arduino zu einem Compiler-Error ("-fpermissive..." oder so ) geführt hat, habe ich mal etwas herumprobiert und zu diesem hier umgeschrieben.
Könnten diesen bitte mal C-Kenner überprüfen, ob der Code niet- und nagelfest ist, gerade was Indices und Pointer angeht?
Danke euch!

edit - nee, war falsch... Sad
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
27.05.2015, 14:01 (Dieser Beitrag wurde zuletzt bearbeitet: 27.05.2015 14:02 von HaWe.)
Beitrag #2
RE: C-Code für eine substring-Funktion: richtig ?
es klappt!

Code:
char * substr (char * source,  char * sub,  int16_t  pos,  int16_t  len) {
   char   *sret = sub;

   if ( (pos+len) >  strlen(source) ) len = strlen(source)-pos;  // cut away if too long
   sub = strncpy(sub, source+pos, len);
   sub[len] = '\0';
  
   return sret;  
}

void loop() {
   char sbuf[128] = "to be or not to be";
   char sub[128];
  
   substr(sbuf, sub, 6, 9);  // => "or not to"
   Serial.println();
   Serial.println(sbuf);
   Serial.println(sub);
   Serial.println(substr(sbuf, sub, 6, 9) );
  
   while(true);
  
}

Ausgabe, völlig korrekt:
Code:
to be or not to be
or not to
or not to



gelöst!
(blöde pointer !) Undecided
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
Tongue Visual Studio Code als Editor für die Entwicklung von Arduino Code Klaus(i) 1 194 03.09.2017 19:15
Letzter Beitrag: Mathias
  Volume Up falscher Tastatur Hex-Code Maxi290997 7 479 03.07.2017 21:49
Letzter Beitrag: Maxi290997
  Schlagwerk für eine Uhr ist1969 37 1.843 16.06.2017 18:54
Letzter Beitrag: Tommy56
  delay(...) im Code ok? donut 4 407 08.06.2017 20:16
Letzter Beitrag: donut
  eine einfache Xor Bitte ? himbeersirup 1 263 08.06.2017 09:15
Letzter Beitrag: MicroBahner
  Textdokument in Arduino Code umwandeln Tellen 9 554 03.06.2017 16:30
Letzter Beitrag: Tellen
  switch case funktion ausser halb loop ??? huber5093 13 1.476 12.04.2017 15:26
Letzter Beitrag: Tommy56
  TFT Pixel to Code oOSpikeOo 5 371 06.04.2017 18:49
Letzter Beitrag: Tommy56
  Tri-State Code ?? Franz54 3 353 12.02.2017 19:23
Letzter Beitrag: Franz54
  Code aus 1.6.9 geht mit 1.8.1 nicht mehr zu kompilieren DL1AKP 7 678 02.02.2017 12:16
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste