Dear Expert, I have a simple C program with 'linklist' data structure processing as below. ////////////////////////////////////// #include <stdio.h> #include <stdlib.h> typedef struct node{ unsigned int id; struct node * next; }; void main(void){ struct node * first; struct node * n; unsigned int i; printf("/////////////////\r\n"); first->next = (struct node *) malloc(sizeof(struct node) * 10); if(first->next == NULL)printf("** Not enough memory space\r\n"); printf("first->next %X\r\n",first->next); first = NULL; //no first link for(i=1;i<=10;i++){ n->id = i; n->next = first; first = n; }; while(first != NULL){ printf("n->id = %X , n->next %X\r\n",first->id,first->next); first = first->next; } free(first); } ///////////////////// When I run this program , the result is unterminate loop. But I try to test this program on Turbo C++ when including "malloc.h" , it is work and result is correct! What wrong with this codeing? Then,I wonder does C51 support link list data processing? I will looking forward your reply and thank you for all suggestion. Birdy.
Or worse, Registers! So what? If it "appears" to work, pass it down the line to QA where any such problems will certainly be caught...right?
on the comments above: the '51 is a wonderful little thing when treated as a '51 it is horrible when treated as "a processor"
²erik malund - it's clearly just a spammer digging-up the 17-year-old thread!
AbuBakkar said:Check ou Tavvy’s coding classes
If the quality of the post is anything to go by, I think they'll be best avoided!