-         

Ergebnis 1 bis 10 von 10

Thema: String-Variablen mit RP6?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    28.04.2009
    Ort
    Wörgl
    Alter
    21
    Beiträge
    175

    String-Variablen mit RP6?

    Anzeige

    Hallo,

    kann ich mit der Lib vom RP6 eigentlich Variablen als String verwenden? Wenn ich eine Variable als String vereinbare, schimpft der Compiler.

    lg
    Michi

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.08.2007
    Ort
    Delmenhorst
    Alter
    32
    Beiträge
    731
    Die Funktionen erwarten einen bestimmten Typ, man kann Typen ändern oder Variablen umwandeln.
    Poste mal ein Beispiel, am besten mit Fehlermeldung.

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    28.04.2009
    Ort
    Wörgl
    Alter
    21
    Beiträge
    175
    Der Programmcode:

    Code:
    #include "RP6ControlLib.h"
    
    
    int main()
     {
      initRP6Control(void);
      string s;
      s="Hallo";
      writeString(s);
      return 0;
     }
    Und die Fehlermeldung:

    Code:
    > "E:\Daten\RP6\Programme\Eigene Programme\String\\make_all.bat" 
    
    E:\Daten\RP6\Programme\Eigene Programme\String>set LANG=C 
    
    E:\Daten\RP6\Programme\Eigene Programme\String>make all 
    
    -------- begin --------
    avr-gcc (GCC) 4.1.2 (WinAVR 20070525)
    Copyright (C) 2006 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    
    Compiling: String.c
    avr-gcc -c -mmcu=atmega32 -I. -gdwarf-2   -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=String.lst -I../RP6lib -I../RP6lib/RP6control -I../RP6lib/RP6common -std=gnu99 -MD -MP -MF .dep/String.o.d String.c -o String.o
    String.c:1:29: error: RP6RobotBaseLib.h: No such file or directory
    String.c:5: warning: function declaration isn't a prototype
    String.c: In function 'main':
    String.c:6: warning: implicit declaration of function 'initRP6RobotBase'
    String.c:7: error: 'string' undeclared (first use in this function)
    String.c:7: error: (Each undeclared identifier is reported only once
    String.c:7: error: for each function it appears in.)
    String.c:7: error: expected ';' before 's'
    String.c:8: error: 's' undeclared (first use in this function)
    String.c:9: warning: implicit declaration of function 'writeString'
    String.c:11:3: warning: no newline at end of file
    make: *** [String.o] Error 1
    
    > Process Exit Code: 2
    > Time Taken: 00:01
    lg
    Michi

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.08.2007
    Ort
    Delmenhorst
    Alter
    32
    Beiträge
    731
    Probleme fangen immer beim ersten Fehler an!
    String.c:1:29: error: RP6RobotBaseLib.h: No such file or directory

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    28.04.2009
    Ort
    Wörgl
    Alter
    21
    Beiträge
    175
    oje, da ist wohl ein Fehler im Makefile.

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.08.2007
    Ort
    Delmenhorst
    Alter
    32
    Beiträge
    731
    Du kannst zum testen auch den kompletten Pfad zu der Datei angeben.

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    28.04.2009
    Ort
    Wörgl
    Alter
    21
    Beiträge
    175
    So, jetzt hab ich den Fehler beseitigt, die Fehlermeldung sieht nun so aus:

    Code:
    > "E:\Daten\RP6\Programme\Eigene Programme\String\\make_all.bat" 
    
    E:\Daten\RP6\Programme\Eigene Programme\String>set LANG=C 
    
    E:\Daten\RP6\Programme\Eigene Programme\String>make all 
    
    -------- begin --------
    avr-gcc (GCC) 4.1.2 (WinAVR 20070525)
    Copyright (C) 2006 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    
    Compiling: String.c
    avr-gcc -c -mmcu=atmega32 -I. -gdwarf-2   -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=String.lst -I../RP6lib -I../RP6lib/RP6control -I../RP6lib/RP6common -std=gnu99 -MD -MP -MF .dep/String.o.d String.c -o String.o
    String.c: In function 'main':
    String.c:7: error: 'string' undeclared (first use in this function)
    String.c:7: error: (Each undeclared identifier is reported only once
    String.c:7: error: for each function it appears in.)
    String.c:7: error: expected ';' before 's'
    String.c:8: error: 's' undeclared (first use in this function)
    String.c:11:3: warning: no newline at end of file
    make: *** [String.o] Error 1
    
    > Process Exit Code: 2
    > Time Taken: 00:01

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.08.2007
    Ort
    Delmenhorst
    Alter
    32
    Beiträge
    731
    Ja er kennt den Datentyp "string" nicht, wie soll er auch.

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    28.04.2009
    Ort
    Wörgl
    Alter
    21
    Beiträge
    175
    schade, trotzdem danke für die Hilfe

    lg
    Michi

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.08.2007
    Ort
    Delmenhorst
    Alter
    32
    Beiträge
    731
    Versuchs so:
    Code:
    #include "RP6ControlLib.h" 
    
    
    int main() 
     { 
      initRP6Control(void); 
      char s[6]="Hallo";
      writeString(s); 
      return 0; 
     }

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •