は私がインタビューにあったし、次のコードは、私に与えられた: -連合とメモリ管理
union mix
{
int i;
char c[2];
};
int main()
{
union mix key;
key.i=512;
printf("\n %d,%d,%d",key.i,key.c[0],key.c[1]);
return 0;
}
と私は家に来て、システム上でそれを実行したとき、私は出力を得た: - 512,0 、2。
誰でもそれを私に説明することができますどのように動作するのか、なぜc [1] = 2ですか?
編集: - 私が知っているのは、メモリ内のビットストレージに関連していることです。
Cの開発者とのインタビューで、データ型とメモリの仕組みがわからない場合は、申し訳ありません...データがメモリにどのように格納されているかを理解しておく必要があります。 –
サミーそれは、Cの開発者のCのスキルをテストすることを決めたJavaのためのインタビューだったCのdevlooerのためのインタビューではなかった:D – NeoR
@ NeoR:まあ、それは素敵じゃない... – alk