Pei_Useless 2012-09-16 14:38:01

[C] 何がしたかったのか このエントリーをはてなブックマークに追加

投稿者からのアピールポイント

10年位前、炎上しているプロジェクトの支援に入って最初に見たコードです。
こんなコードが大量に存在し、1年近く燃え続けました。

void funcX() {
    int a;
    a = funcB();

    if( a = 0 ) {
        funcA();
    } else {
        funcA();
    }
}

使い方ヒント: 「これは臭う」という行を見付けたら、各行のsmellをクリックしてマーキングしておきましょう(要Twitter OAuth認証)

コメント(19)

#1 DsYochibe 2012-09-16 14:57:08  

a=0だと…?

#2 ekykwan 2012-09-16 15:01:44  

どこから突っ込めばいいかわからない

#3 Chiether 2012-09-18 01:23:33  

こういう事があるから 0 = a と定数を左にしようぜって言われるんだよなぁ……。ところでコンパイラさんは、警告吐かないんで?

#4 okadabasso 2012-09-18 07:48:01  

最近Cコンパイラー使ってないけど警告してくれた気がするんだがなあ

#5 coratue 2012-09-22 13:57:04  

5~8行目の所って…まったく意味ないですよね? あと funcB(); が気になる

#6 math_neko 2012-09-22 13:59:47  

ツッコミどころが満載過ぎる。funcB が返す値で分岐させると見せかけて分岐になってないうえに a に代入した funcB の返り値がご臨終という…まさにウンコード

#7 Miraranran 2012-10-03 14:13:31  

分岐、どっちもfuncAなの?これは誤植?ガチ? いや、機能してないから結果どっちでもいいんだけどね。

#8 DrFaust 2012-10-07 11:05:17  

糞コードってよりは、ケアレスミスによるバグかな

#9 BlackerPanda 2012-10-08 14:36:30  

ifいみねえええ!!

#10 P_Sakaduki 2012-10-09 11:00:25  

何故ifを使った?wしかも代入してるしw

#12 kaicohen 2012-10-11 13:53:46  

ううん……。

#13 Equation0909 2012-11-12 14:44:24  

必ず、何が何でもfuncA()を通さないといけないのですね、はいわかります。

#14 lighter_mt 2012-11-17 01:55:08  

代入以前にif文自体が必要ないよね…

#15 komamonodaisuki 2015-03-14 08:00:37  

コンパイル通るの?これ

#16 cp30ba 2016-06-14 12:44:43  

くっさ!

#17 doscoy33 2016-06-15 04:07:36  

0? funcA():0? funcA():0? funcA():0? funcA():funcA();
#18 HighSpecOjisan 2017-09-01 03:18:03  

a = 0...? 真偽どちらでもfuncA()呼び出す...? 頭打ったのかな?

#19 utubyou009 2018-08-06 19:48:59  

ウンコ度まだまだ。main関数内で

if( argv[i][0]='-' )......

とやることもあり得る。

コメント投稿には、twitter認証が必要です。

Twitter認証

このウンコードに臭った人は、こちらのウンコードにも臭ってます

[C] すげーちゃんと動く!

このエントリーをはてなブックマークに追加

結合試験2日前に脱退したうんkプログラマ...

return 0;

鑑賞する »

[C] ×有限ループ ◯無限ループ

このエントリーをはてなブックマークに追加

有限ループのはずが、無限ループに... ...

int i,j;
for(i=0;i<100;i++) {
 for(j=0...

鑑賞する »

[その他] 【CSS】結局何をどう表示させたいのか

このエントリーをはてなブックマークに追加

頭の中で何を考えてCSSを書いているのだ...

.hoge{
  color : #030303 ;
  border : ...

鑑賞する »