zeichen kopieren klappt nicht...
-
warum klappt das nicht ?
#include <stdio.h> #include <string.h> int main() { char *text = "3/2 + 1/2*x^3*4 + 1/2",*koeff; int i; size_t n ; printf("%s\n",text); n = strlen(text); for (i=0; i==n ; i++) { koeff[i] = text[i]; } koeff[n+1] = '\0'; printf("%s\n",koeff); return 0; }
gruß Tim
-
weil koeff ins Nimmerland zeigt.
1. Möglichkeit
char *text = "3/2 + 1/2*x^3*4 + 1/2", koeff[1024];
2. Möglichkeit
char *text = "3/2 + 1/2*x^3*4 + 1/2", *koeff; ... koeff = malloc(n + 1); if(koeff == NULL) { fprintf(stderr, "Kein freier Speicher\n"); return 1; } ... free(koeff); return 0;
-
also weder mit dem ersten noch mit dem zweiten kann klappt es, kannst du mir mal genau sagen wie das klappt ?
Tim
-
for (i=0; i==n ; i++)
Das Fettgedruckte solltest du nochmal überdenken.
-
Warum kopierst du überhaupt manuell? Dafür gibt's doch strcpy() bzw. strncpy().