링크 된 목록과 설정 기능이 있습니다.링크 된 목록의 노드 값 바꾸기
struct my_struct {
int value;
int type;
char *name;
struct my_struct *next;
};
struct my_struct *setValue(struct my_struct *s, char *name, int b) {
if(s!=NULL) {
while(s != NULL) {
if(strcmp(s->name,name) == 0) {
s->value = b;
}
s=s->next;
}
return s;
}
return NULL;
}
여기에서 name은 검색 키워드이고 b는 s-> value의 새 값입니다. 왜 s -> value는 바꿀 수 없습니까? 그 기능을 수행 한 후에는 출력이 이상합니다. 나는 이해할 수 없다, 무슨 일이 있었는지.
이 함수가 항상 NULL 인 포인터를 반환하는 이유는 무엇입니까? 무엇을 반환해야합니까? – wildplasser