- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 7 von 7

Thema: Frust der Woche "strcpy"

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    .. Ein char ist ja eigentlich im Prinzip das gleiche wie ein uint8_t .. Eventuell hat ja mal wer das gleiche Problem.
    Stimmt, jetzt, da ich das lese - darüber bin ich auch schon gestolpert - und wohl auch in Studio7. Im Studio4 läuft fast alles das ich code. ICH hatte das damals auf meine äusserst dünnen Kenntnisse der Sprache C zurückgeführt. Übrigens hatte ich ähnliche Probleme mit einer Definitionsbibliothek (Peter Dannegger, "mydefs.h"), soweit ich mich erinnern kann damit:
    Code:
      typedef unsigned char   u8;
      ..
      typedef uint16_t       u16;   //typedef unsigned short u16;
      typedef  int16_t       s16;   //typedef   signed short s16;
    Ciao sagt der JoeamBerg

  2. #2
    HaWe
    Gast
    http://www.cplusplus.com/reference/cstring/strcpy/
    Code:
    function
    <cstring>
    strcpy
    
    char * strcpy ( char * destination, const char * source );
    
    Copy string
    Copies the C string pointed by source into the array pointed by destination, including the terminating null character (and stopping at that point).
    
    (...)
    Die Definition verlangt also char*.

    so klappt es bei mir immer, sowohl per gpp auf Arduino als auch GCC und gpp auf Raspberry Pi /Linux und Borland C++ und devcpp auf Windows PC

    PS
    char ist auf 8-bit AVRs ein signed char, nur auf 32bit-cpus ist char unsigned, hat also auch keine über alle Plattformen hinweg fest definierte Bedeutung
    Da avr-gcc aber da etwas eigen ist in Bezug auf stdint.h und string.h (Arduino g++ ebenfalls), ist man da in Beug auf strcpy etc. ziemlich auf char eingeschränkt.
    u.U. (pure Spekulation) hilft der Compilerschalter -fpermissive, um außer char auch die stdint-Typen zu erlauben, ist aber sicher ebenfalls Compiler- und Plattform-abhängig.

    -fpermissive
    Downgrade some diagnostics about nonconformant code from errors to warnings. Thus, using -fpermissive will allow some nonconforming code to compile.

    Bottom line: don't use it unless you know what you are doing!
    Geändert von HaWe (19.01.2019 um 09:47 Uhr)

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 08.12.2018, 17:21
  2. MAL Wieder "C" Frust
    Von Siro im Forum Offtopic und Community Tratsch
    Antworten: 19
    Letzter Beitrag: 27.11.2018, 13:51
  3. Antworten: 10
    Letzter Beitrag: 01.11.2017, 12:53
  4. Antworten: 2
    Letzter Beitrag: 15.06.2011, 21:18
  5. "Soft-Reset?" und "Finger-Interrupt?"
    Von trapperjohn im Forum Asuro
    Antworten: 8
    Letzter Beitrag: 10.06.2008, 23:02

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress