c - Why am I able to get rid of seg. fault if I put printf()? -
my program has list handling functions, worked fine until added reverselinkedlist function. observed there seg. fault error, later on figured out adding printf() "solve" error, not sure why.
here snippet of code:
node *list_b; void functiona(); int main ( ) { .. functiona(); printf("o.o\n");// <=== if add line, seg. fault gone. without it, got error printsummary(); //this printing out whatever in list_b } void functiona() { list_b = reverselinkedlist(list_b); } node* reverselinkedlist(node *head) //this implemented in other head file. { node *current = null; node *temp; while(head != null) { temp = head; head = head->next; temp->next = current; current = temp; } return current; }
calling printf
changes values on stack. if functions after printf
not initialize local variables properly, results in different behaviour including printf()
or not.
you seem comparing stock_name
before set (with malloc()
). global variable?
Comments
Post a Comment