0

私は Linux カーネル ソースを調べていて、この関数定義を見つけました。

function(struct net * const *pnet)

誰かがこれが何を意味するのか説明できますか. それは net* または net** または const net* または const net** ですか?

ありがとう

4

2 に答える 2

6

pnet は、構造体 net への const ポイントへのポインターです (このような場合、変数の名前から型の名前までを右から左に読み取り*、「ポインター」と読みます)。

于 2013-01-07T00:01:04.077 に答える
4

つまり、(非定数) 構造体へのポインターの定数配列への (非定数) ポインター。

したがって、別の配列を割り当てることができます。

pnet = myArrayOfStructs;

または、構造体を変更できます。

pnet[k]->proc_inum = 17;

ただし、完全な構造体を変更することはできません:

pnet[k] = &pnet[k+1]; // compiler error
于 2013-01-07T00:14:46.057 に答える