String in array Speichern



  • Hallo
    Ich versuche schon die ganze zeit einen string in ein Array zu schreiben
    Ich bin neu in C mit der "normalen" variante geht es nicht

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    int main(int argc, char *argv[])
    { 
    char test[10];//ziel array
    test="12345678";
    printf("%s",test);
    system("pause");
    }
    

    Das Programm lässt sich nicht einmal Compilieren

    wenn ich es mit einer For versuche kommt auch nichts bei raus
    Die variable tests bleibt leer

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    int main(int argc, char *argv[])
    { 
    int i;
    char tests[10]="12345678";//quell array
    char test[10];//ziel array
    for(i=0;i<10;i++)
    {
        test[i] == tests[i];
    }
    printf("quelle :  %s\n",tests);
    printf("ziel   :  %s\n",test);
    system("pause");
    }
    

    ich verzweifle langsam an diesem Problem
    Ich hoffe mir kann jemand weiterhelfen



  • Im zweiten Codestück:

    test[i] = tests[i]; /* statt == */
    

    == ist ein Vergleich, = eine Zuweisung.



  • seldon schrieb:

    Im zweiten Codestück:

    test[i] = tests[i]; /* statt == */
    

    == ist ein Vergleich, = eine Zuweisung.

    *kopfgegentischschlag*
    Natürlich Danke!



  • Alternativ böte sich übrigens memcpy an.



  • danke genau das habe ich gesucht



  • Wenn dein Chararray nullterminiert ist ( = Definition String ) nimmt man üblicherweise strcpy und nicht memcpy, welches einen ( für diesen Fall redundanten ) Längenparameter gegenüber strcpy benötigt.


Anmelden zum Antworten