So wird der Benutzer unbekannte Anzahl von Wörtern eingeben ,, ich nehme an, dass jedes Wort hat maximale Länge 10; Ich habe den Lvalue als linken Operanden der Zuweisung erorr aus dem Realloc benötigt. Ich bin neu in C und ich versuchte Google, kann aber keine sinnvolle Antwort finden.Wie die Wörter von Array neu zuweisen?
Code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define CAPACITY 10
#define NUM_OF_WORDS 10
int main(void)
{
char *word= malloc(10*sizeof(char));
char *w[NUM_OF_WORDS];
int i;
int n;
for(i = 0 ; scanf("%s", word)==1; ++i)
{
if(i == NUM_OF_WORDS-1)
w = realloc(w, (NUM_OF_WORDS*=2) * sizeof(char));
w[i] = malloc(strlen(word)+1 * sizeof(char));
strcpy(w[i], word);
}
return 0;
}
Du hast es kristallklar erklärt! Ich danke dir sehr! –