為什么亂碼 找了半天也不知道怎么解決
uj5u.com熱心網友回復:
黑色圖片上邊
v = (node *)malloc(。。。)后面的那句
strcpy(L->name, name); 是錯的, 這個導致了being 1 3 3 這個問題, 后輸入的beijing覆寫了原來的cangzhou字串
應該是 strcpy(v->name, name);
uj5u.com熱心網友回復:
至于為啥后面的那個是亂碼, 還看不出來,你的代碼不全
看不到你的initList那個初始化鏈表的代碼, 但是感覺你的鏈表是帶空頭節點的
如果是這樣, insert的那個函式兩次賦值就有些莫名奇妙, 應該是
Node * insert( ..... ) {
Node * u = L;
if ( L->next ) while (u->next !=NULL ) u=u->next;
//讓u為尾巴節點,鏈表空的時候u就是頭節點; 這樣u->next始終是NULL
u->next = (Node*) malloc( sizeof(Node));
strcpy(u->next->name, name); // 如果Node里面的name是char 【20】這樣類似的定義沒有問題,如果是char*就不對
u->next->x = x;
u->next->y = y;
u->next->level = level;
u->next->next = NULL;
return L;
}
這樣能保證把insert的東西掛在鏈表的最后
看不到全部代碼,不知道你的那個輸出是怎么來的
還有, 提問的時候, 程式的運行結果貼圖; 代碼必須貼文本,否則給你做示范還得對照圖去一個個的敲, 累死人不償命是吧
uj5u.com熱心網友回復:
參考 2 樓 尋開心 的回復: 至于為啥后面的那個是亂碼, 還看不出來,你的代碼不全
看不到你的initList那個初始化鏈表的代碼, 但是感覺你的鏈表是帶空頭節點的
如果是這樣, insert的那個函式兩次賦值就有些莫名奇妙, 應該是
Node * insert( ..... ) {
Node * u = L;
if ( L->next ) while (u->next !=NULL ) u=u->next;
//讓u為尾巴節點,鏈表空的時候u就是頭節點; 這樣u->next始終是NULL
u->next = (Node*) malloc( sizeof(Node));
strcpy(u->next->name, name); // 如果Node里面的name是char 【20】這樣類似的定義沒有問題,如果是char*就不對
u->next->x = x;
u->next->y = y;
u->next->level = level;
u->next->next = NULL;
return L;
}
這樣能保證把insert的東西掛在鏈表的最后
看不到全部代碼,不知道你的那個輸出是怎么來的
還有, 提問的時候, 程式的運行結果貼圖; 代碼必須貼文本,否則給你做示范還得對照圖去一個個的敲, 累死人不償命是吧 謝謝大神 我改正了第一個問題 但是我的亂碼問題還沒辦法解決 感覺應該是fscanf出現的錯誤但是查不到如何解決
uj5u.com熱心網友回復:
參考 2 樓 尋開心 的回復: 至于為啥后面的那個是亂碼, 還看不出來,你的代碼不全
看不到你的initList那個初始化鏈表的代碼, 但是感覺你的鏈表是帶空頭節點的
如果是這樣, insert的那個函式兩次賦值就有些莫名奇妙, 應該是
Node * insert( ..... ) {
Node * u = L;
if ( L->next ) while (u->next !=NULL ) u=u->next;
//讓u為尾巴節點,鏈表空的時候u就是頭節點; 這樣u->next始終是NULL
u->next = (Node*) malloc( sizeof(Node));
strcpy(u->next->name, name); // 如果Node里面的name是char 【20】這樣類似的定義沒有問題,如果是char*就不對
u->next->x = x;
u->next->y = y;
u->next->level = level;
u->next->next = NULL;
return L;
}
這樣能保證把insert的東西掛在鏈表的最后
看不到全部代碼,不知道你的那個輸出是怎么來的
還有, 提問的時候, 程式的運行結果貼圖; 代碼必須貼文本,否則給你做示范還得對照圖去一個個的敲, 累死人不償命是吧 插入節點我已經改正了 不帶有頭節點 應該是檔案讀取出現了錯誤
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/156942.html
標籤:C++ 語言
上一篇:用c語言畫棋盤
下一篇:c邏輯運算子