0

重複の可能性:
関数から複数の値を返す

Cで二重リンクリストを作成しようとしています。別の関数を呼び出してノードを作成し、リストを作成するメイン関数があります。この最後の関数は、2つの異なるポインター(1つはリストの先頭ともう1つはリストの末尾)をmainに返すために必要です。「 return 」を使用して2つのものを返す方法はありますか?この場合、2つのポインター。2つの要素、2つのポインターを持つ構造を返すことを考えました。しかし、簡単な方法はありますか?

これは私がメインで関数(insertacomienzo)を呼び出す方法です:

primero = insertacomienzo (primero, ultimo, tamaniomax);

(primeroはポインターです)そして、関数は、変更されたこのポインターを返します。

return primero;

私が必要としているのは、2つのポインターを返すことです。1つはリストの先頭を指し、もう1つはリストの末尾を指します。

ありがとうございました!

4

1 に答える 1

0

InOutパラメーターを使用して、追加のパラメーターを返します(これは、通常Cで行われる方法です)。InOutパラメータは''だけでなく'*'型です(CPPでは'&*'型ですが、Cでは'&'はありません)

これがinout関数のプロトタイプです

node* GenerateList(node* currentListItem,node** InOutLastListItem,int currentNodes)
于 2012-11-06T18:07:25.950 に答える