www.mikrocontroller.net

Forum: Compiler & IDEs Probleme mit strtof


Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum

Beim Compilieren kommt bei dem Befehl strtof immer eine Fehlermeldung.
> undefined reference to `strtof'

Hier ein Teil mit dem C Code:
int i = 1;
char *ptr;
double az, el;

ptr = strtok(string, "Z L");
while(ptr != NULL){

  if(i == 2){
     az = strtof(ptr,NULL);
     }


  if(i == 4){
     el = strtof(ptr,NULL);
     //  el = el - 180;
     }
    
  i++;
  //printf("%d. Wort: %s\n",i++,ptr);
  ptr = strtok(NULL, " L");
}

Compiler zeigt den Fehler bei el = strtof(ptr,NULL); an.
Wo liegt das Problem?

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weiters sind noch zwei Warnings vorhanden:

> warning: passing argument 1 of 'strtok' discards qualifiers from pointer target 
> type
> implicit declaration of function 'strtof'

Autor: Grrr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kennst Du schon google?

Autor: Grrr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erster Treffer: #include <stdlib.h>

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Google hab ich schon benutzt bevor ich hier postete.

#include <stdlib.h> habe ich ebenfalls includiert!

Der Fehler besteht noch immer.

Autor: Grrr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian schrieb:
> #include <stdlib.h> habe ich ebenfalls includiert!
Wo? Bitte in Zukunft vollständigen Code posten und erklären was Du schon 
probiert hast.

Falls Du zufällig die avr-lib verwendest: Es gibt da kein strtof.

Autor: Sven P. (haku) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Quelltext lässt sich (nach Einbau eines geeigneten main()-Rahmens) 
auf meiner Maschine anstandslos übersetzen.

(Ja, ich weiß, wo dein Fehler liegt)

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Grrr schrieb:
> Christian schrieb:
>> #include <stdlib.h> habe ich ebenfalls includiert!

"Undefined reference" ist eine Linkermeldung; #include wird da
nicht mehr helfen.

> Wo? Bitte in Zukunft vollständigen Code posten und erklären was Du schon
> probiert hast.

Jupp.

>
> Falls Du zufällig die avr-lib verwendest: Es gibt da kein strtof.

Er sollte auch sagen, für was er eigentlich programmiert.
gcc kann vieles heißen...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.