C系列って欠陥言語だろwat TECH
C系列って欠陥言語だろw - 暇つぶし2ch737:デフォルトの名無しさん
09/12/18 20:46:16
>736
一通り読んだがC89やC99の規格に準拠したコードになっていない

詰まるところ文(Statement)を式(Expression)にできれば良いわけだがカンマ演算子やビット積、論理積などで式を繋げていくこともできる
また、(void)式(正しい呼び方は知らないが、VOID式とでも呼ぼうか)をif()の中で使いことができるようにするためにVOID式とスカラをカンマ演算して繋げてif ( VOID式, スカラ )のようにすれば良い
こうすることで戻り値がvoidな関数を呼び出すことができる
具体的には
     1    #include <stdio.h>
     2    #include <stdlib.h>
     3    
     4    void
     5    foo(
     6        int *x
     7    ) {
     8        if ( (*x = 10) ) {}
     9    }
    10    
    11    int
    12    main(
    13        int c,
    14        char **v
    15    ) {
    16        if ( foo(&c), printf("%d\n", c) ) {}
    17        if ( exit(0), 1) {}
    18    }
のようになる

cf:スレリンク(tech板:25-26番)


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch