バグってるのはコンパイラじゃなくて開発者のアタマである。
void x2(int* pData) { *pData = *pData * 2; } int main() { // 最後の 0 が無いと強制終了になる。 // コンパイラのバグと思われる。 short data[] = { 100, 200, 300, 400, 500, 0 }; for(int i = 0; i < 5; ++ i) { short* pData = &data[i]; // short から int へのキャストなので絶対安全 x2((int*) pData); printf("%d ", *pData); } return 0; }
使い方ヒント: 「これは臭う」という行を見付けたら、各行のをクリックしてマーキングしておきましょう(要Twitter OAuth認証)
ひとのせいにしないで欲しい
処理系に依るので場合によっては動いているように見えるのです。
こういうことをしてしまう人は、往々にして、「デバッグビルドだと通るのに、リリースビルドだと落ちるですう」 って頭抱えてる人だねぇ。
う、うんこだああああああああああ
「コンパイラのバグと思われる。」( ー`дー´)キリッ
コメント投稿には、twitter認証が必要です。
Twitter認証
その自信はいったいどこから来るのか… そしてどこから突っ込めばいいのか…