中のリストは私が最初のものは先頭のセグメンテーションフォールトがへの最初のものを利用することになっている含まれている二番目の要素を追加し、私は2つの機能を使用してリンクリストに入力し、直接数字をソートするために試してみました仕事をしなさい。ここでセグメンテーションフォールトは、C
#include <stdio.h>
#include <stdlib.h>
typedef struct cellule
{
int val;
struct cellule *suivant;
} cellule;
typedef struct cellule* liste;
liste insert_tete(liste L,int n)
{
liste p;
p=malloc(sizeof(cellule));
p->val=n;
p->suivant=L;
return p;
}//ok :)
liste insert_croissant(liste L,int n)
{
if(!L)
{
L=insert_tete(L,n);
return L;
}
liste p,q;
for(q=L,p=L; (p!=NULL)&&(n> (p->val)) ; q=p,p=p->suivant); //
p=insert_tete(p,n);
q->suivant=p;
return L;
}
は、読みやすくするために、あなたのコードを再フォーマットしてください。 –
'insert_croissant()'がおいしい! – FatalError
がありそうする理由はありません、それは実際にあなたがキャストせずに( ''を含めるのを忘れているという事実を隠すことができますCのmalloc関数の戻り値をキャストしないでください、nonexistant関数は 'int'を返すことが暗示されます、それは失敗するが、キャストはそれを隠す)。 Cは 'void *'を他のポインタ型に暗黙的に強制することに問題はありません。 –