einen Zeichenfolgenwert zu Ich muss einem Element in einer Struktur eine Zeichenfolge (Zeichen der Größe [255]) zuweisen. Die Struktur sieht wie folgt aus:C Weisen Sie einem Zeichenfolgenelement in einer Struktur mit einer Funktion
struct node{
int ID, YEAR, MONTH, DAY
char CATEGORY[255], DETAIL[255];
double AMOUNT;
struct node * next;
}
struct node * head = NULL;
und ich habe Code, der Werte aus einer Textdatei empfängt und setzt es als eine Variable, die ich dann an die add_struct Funktion übergeben, die wie folgt aussieht:
void add_struct(int i, char c, char d, double a, int y, int m, int da){
if (head == NULL){
head = (struct node *) malloc(sizeof(struct node));
head->ID = i;
head->CATEGORY = c;
head->DETAIL = d;
head->AMOUNT = a;
head->YEAR = y;
head->MONTH = m;
head->DAY = da;
}
else {
struct node * p = head;
while(p->next != NULL) p = p->next;
p->next = (struct node *) malloc(sizeof(struct node));
p->next->ID = i;
p->next->CATEGORY = c;
p->next->DETAIL = d;
p->next->AMOUNT = a;
p->next->YEAR = y;
p->next->MONTH = m;
p->next->DAY = da;
}
}
Ich erhalte eine Fehlermeldung:
"incompatible types when assigning to type 'char[255]' from type 'char'"
Wie ordne ich diese Werte den Elementen CATEGORY und DETAIL richtig zu?
'char c '->' char * c' ... 'p> Weiter-> KATEGORIE = c; '->' strcpy (p-> next-> CATEGORY, c); ' – BLUEPIXY
Bedeutet' char c, char d, 'wirklich ein einzelnes Zeichen oder ein Zeiger auf char (string)? – fluter
Benötigen Sie auch XXX'-> next = NULL; ' – BLUEPIXY