Ik heb hier char text[60];
Dan doe ik in een if
:
if(number == 2)
text = "awesome";
else
text = "you fail";
en er stond altijd dat expressie een aanpasbare L-waarde moet zijn.
Antwoord 1, autoriteit 100%
lvalue
betekent “linkerwaarde” — het moet toewijsbaar zijn. U kunt de waarde van text
niet wijzigen omdat het een array is en geen pointer.
Declareer het ofwel als char pointer (in dit geval is het beter om het te declareren als const char*
):
const char *text;
if(number == 2)
text = "awesome";
else
text = "you fail";
Of gebruik strcpy:
char text[60];
if(number == 2)
strcpy(text, "awesome");
else
strcpy(text, "you fail");