c言語にてリスト構造に要素を追加するinsert関数を作りました。
nodeの前にpを入れたいのですが、書き方が分かりません。
// nodeがpの次に来るように代入
の後に2行で書きたいのですがどなたかわかる方教えてください。
c
#include <stdio.h> #include <stdlib.h> #include <string.h> #define LEN 10 // 文字列1つとポインタの構造体 typedef struct node{ char str[LEN]; struct node* next; } NODE; // インサート関数 NODE* insert(char str[LEN], NODE* node){ if(node != NULL){ // nodeが空でないなら if(strcmp(str, node->str) > 0){ // 「str」が「node->str」より後に来る文字列の場合 insert(str, node->next); // 追加先をnode->nextにしてinsertを実行 }else //挿入用ノードの生成 NODE* p = (NODE*)malloc(sizeof(NODE)); strcpy(p->str, str); // nodeがpの次に来るように代入 } }else{ node = (NODE*)malloc(sizeof(NODE)); strcpy(node->str, str); node->next = NULL; } return node; }
>// nodeがpの次に来るように代入
>の後に2行で書きたい
なぜ2行なのでしょうか。
まだ回答がついていません
会員登録して回答してみよう