У меня есть функцияC Настройка указателя на символ * к * полукокса
setCharVal(char *s, int value){
valueStruct* makeStruct = malloc(sizeof(valueStruct));
makeStruct->s = s;
//set other values
}
valueStruct имеет символ * s; когда я печатаю s, входящий в функцию, это нормально, но когда я печатаю makeStruct-> s, он ничего не печатает.
Я попытался
makeStruct->s = strdup(s);
и
makeStruct->s = malloc(sizeof(s);
makeStruct->s = s;
и ни одна из этих работ; он ничего не печатает для makeStruct-> s.
Я звоню setCharVal с
setCharVal(anotherStruct.s);
Показать, где ' s' и откуда вы пытаетесь распечатать 'makeStruct-> s'. Проблема, вероятно, не в присваивании. – aschepler