Anfänger sucht Profis



  • Bei mir leider nicht 😞 woran kann es liegen?



  • Du zeigst uns nicht den richtigen Code.



  • hmmm sry für die dumme frage, aber wie meinst du das?
    das ist der code den ich unter der IDE CODE::Block geschrieben habe.

    Ps: Bezüglich des terminals ich wollte euch die fehlermeldung zeigen vll hilft sie euch weiter 😕



  • newbieee schrieb:

    hier das problem:

    char str_a[20];
    
        strcpy(str_a, "Hello, world!\n");
        printf(str_a);
    

    Wenn Du Dir den Prototypen von printf() anschaust wirst Du sehen, dass das erste Argument der format string ist.
    Du könntest jetzt einen passenden format string verwenden, der Dein char[] ausgibt:
    printf("%s", str_a);
    Oder ausweichen, auf eine Funktion, die einen const char* ausgibt:
    puts(str_a);



  • ich danke dir, jetzt funktioniert das programm !



  • #include <stdio.h>
    
    int main() {
    
      char string[10];
      int A = -73;
      unsigned int B = 31337;
    
      strcpy(string, "sample");
    
      //Beispiel für die Ausgabe mit verschiedenen Formatstrings
      printf("[A] Dec: %d, Hex: %x, Unsigned: %u\n", A, A, A);
      printf("[B] Dec: %d, Hex: %x, Unsigned: %u\n", B, B, B);
      printf("[field width on B] 3: '%3u', 10: '%10u', '%08u'\n", B, B, B);
      printf("[string] %s Adresse %08x\n", string, string);
    
      //Beispiel für unären Adressoperator (Deferenzierun) und ein %x-Formatstring
      printf("variable A is at address: %08x\n", &A);
    
    }
    

    Hi Leute, was habe ich schon wieder falsch gemacht?
    Code::Block
    sagt:|9|Warnung: Unverträgliche implizite Deklaration der eingebauten Funktion »strcpy« [standardmäßig aktiviert]|
    15|Warnung: Format »%x« erwartet Argumenttyp »unsigned int«, aber Argument 3 hat Typ »char *« [-Wformat]|
    18|Warnung: Format »%x« erwartet Argumenttyp »unsigned int«, aber Argument 2 hat Typ »int *« [-Wformat]|
    ||=== Build finished: 3 errors, 0 warnings ===|

    MfG


  • Mod

    #include <string.h>
    

    P.S. %08x ist nicht der Formatspezifizierer für Pointer. Das wäre %p .

    P.P.S.: Warum überhaupt strcpy? Initialisier dein "string" doch einfach direkt.



  • Das ist ein Beispiel aus einem Buch und ich frage mich wie kann es passieren, dass so grobe Fehler produziert werdeno0 Naja aber danke jetzt funktioniert es!

    MfG


  • Mod

    newbieee schrieb:

    Das ist ein Beispiel aus einem Buch und ich frage mich wie kann es passieren, dass so grobe Fehler produziert werdeno0 Naja aber danke jetzt funktioniert es!

    Weil häufig Bücher von irgendwelchen Sachbuchstümpern geschrieben werden, die alle 6 Monate ein neues Buch auf den Markt schmeißen, jeweils zu einem komplett neuen Thema. Neues Buch? Erfahrungsgemäß ist es sogar immer das gleiche alte Buch, bloß jeweils ein bisschen auf das neue Thema angepasst. Du kannst dir selber denken, wie gründlich für solche Bücher recherchiert wird. Bei Amazon bekommen die dann super Kritiken, weil die Bücher so schön geschrieben sind und weil die Anfänger (die diese Bücher lesen) gar nicht merken, dass sie gerade inhaltlichen Mist gelesen haben.
    Alarmzeichen sind: Der Autor schreibt viele Bücher zu vielen Themen (z.B. der berüchtigte Jürgen Wolf). Das Buch verspricht schnellen ("in 21 Tagen"), vollständigen ("von A bis Z", "komplett") oder einfachen ("für Dummies") Erfolg. Dann lieber die Finger davon lassen.



  • Ok danke für die Info 🙂

    Naja "Gott sei dank" gibt es diese Community!

    MfG


Anmelden zum Antworten