私は自分自身が C を書くことを教育し、情報技術の学習に関連するいくつかのことを行うために、リンクされたリスト ライブラリを作成しました。sizeof(double) が 4.9 で 0 に解決されたため、何かがひどく間違っていることがわかりました。
double ary[] = { 1.0, 2.0, 3.5, 4.9, 5.5 };
LinkedList *list = linkedlist(&ary[0], sizeof(ary[0]));
for( i = 1; i<len(ary); i++ )
ll_push(list, &ary[i], sizeof(double) );
1.0、2.0、および 3.5 ではすべて問題ありませんが、4.9 では失敗します。以前は、コードに sizeof(ary[i]) がありましたが、現在は sizeof(double) も同じようになります。
私はこれに本当に腹を立てています。なぜこれが起こるのか、誰でも説明できますか?