タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

C言語に関するDOISHIGERUのブックマーク (4)

  • プログラミング言語 C の新機能

    7. 文法一般 この章では C 言語に新たに加えられた指示付きの初期化子や複合リテラルといった文法や、暗黙時の宣言に関する変更といった、変更された文法について説明します。 7.1 暗黙の関数宣言 現在の C 言語の規格では、ある関数から他の関数を呼び出す時、とくにその関数のプロトタイプを宣言しなくても使用することができました。例えば stdio.h を読み込まずに、printf を使用するといったことです。しかし、今度の C 言語ではそのような場合、その関数の呼び出しは規格上未定義の動作となります。ただ実際には多くの処理系では警告を出してコンパイルするよう実装されることでしょう。この辺の機能は C++ に近くなっていますね。 7.2 宣言時の暗黙の型 手続き型言語では、一般的に変数や関数などを宣言して使用する必要があります。もちろん C 言語も例外ではありません。しかし C 言語では特に型

    DOISHIGERU
    DOISHIGERU 2012/04/24
    新機能
  • プログラミング言語 C の新機能

    実際の計算は、FLOAT=float 型、DOUBLE=double 型、LONG_DOUBLE=long double 型のもつ範囲と精度で行われる 例えば、FLT_EVAL_METHOD が 1 の時は、float型 ← float型 + float型 の計算でも、float型 ← (float型)((double型)float型 + (double型)float型) として計算が行われる。計算途中でも浮動小数点型の表現範囲とその精度が異なると、同じ値で同じ計算を行っても結果が異なることがある。 8.3 math.h 今回、math.h の内容がかなり power up されています。すごいボリュームで書くのが嫌です。新しくマクロ、typedef、関数が追加されたのに加え、ほとんどの関数には double 型、float 型、long double 型を引数として受け取り、結果をその型

    DOISHIGERU
    DOISHIGERU 2012/03/07
    新機能一覧
  • 可変長引数を再度わたすには II

    [戻る] bun 2008/11/05(水) 14:41:21 便乗質問になってしまうのですが、話が変わるので別スレッドを起こします。 可変長引数をとる関数内から、可変長引数を取る関数を直接呼ぶ方法は存在する のでしょうか? 前々からの素朴な疑問ですので、ご存じの方がいらしたら教えていただけると幸 いです。 以下のようなものです。 void TEST1(LPCTSTR Fmt, ...) { TEST2(Fmt, ...); } void TEST2(LPCTSTR Fmt, ...) { } このままでは、もちろん、 error C2059: 構文エラー : '...' となります。 よろしくお願いいたします。 tetrapod 2008/11/05(水) 15:23:16 C/C++ ソースレベルでの移植性を保ったまま、では存在しない。 自分でアセンブラ手書きするとか、そういうことをす

    DOISHIGERU
    DOISHIGERU 2012/03/06
    可変引数
  • 可変引数について。 - OKWAVE

    va_argを使う方法は知っているのですが、受け渡す引数の数を指定しない方法で、決まった型引数を任意数渡す方法はC言語(C++ではない)で実現できますか? char* test( n, str1, str2, str3, …任意数) nはint, str○ は const char* という形ならば、第二引数以降の引数を呼び出し元で n に与えてやれば、n回だけ va_arg(args, char*) を呼び出せばよいですが、 char* test2(str1, str2, str3, str4, …1つ以上の任意数) という形だと、引数の個数を取得できないためうまくできません。 実現不可能でしょうか?

    可変引数について。 - OKWAVE
    DOISHIGERU
    DOISHIGERU 2012/03/06
    可変引数
  • 1