タグ

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

タグの絞り込みを解除

Cに関するkawachoのブックマーク (4)

  • pszとは

    kawacho
    kawacho 2009/11/18
    pointer to a string terminated by zero
  • C++関数からC関数を呼び出す

    C++の関数からCの関数を呼び出す C++の関数からCの関数を呼び出すことは、日常的に行なわれています。例えば、C++で書かれたプログラムがsqrt()等の標準Cライブラリー を利用 する際には、無意識にC++の関数からCの関数への呼び出しが行なわれています。ここでは、その舞台裏と、自分で書いたC関数を呼び出す方法を説明しま す。 ヘッダーファイル csub.h C++ソースファイル中で、これこれはCプログラム側で定義された関数あるいは変数であると宣言できます。次のように書きます。 extern "C" { 宣言の並び } 通常は、これをヘッダーファイルに書きます。C++のソースからも、Cのソースからもインクルードできるように、C++コンパイラーで定義されるマ クロ``__cplusplus''を使って場合分けします。実際に、C 標準ライブラリーのヘッダーファイルは、このような構造をしてい

    kawacho
    kawacho 2009/11/12
    __cplusplus
  • よくみる extern "C" {} と __cplusplus - はこべにっき ♨

    C向けのライブラリのコードをながめていたらちょくちょく以下のようなコードをみる. #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ /* Cのコードがたくさん */ #ifdef __cplusplus } #endif /* __cplusplus */ なんだろうと思って調べてみたら. __cplusplus g++でコンパイルされるとdefineされるマクロ extern "C" { /* Cのコード */ } ブレースでかこまれた範囲で,リンカでの識別子の扱い方がCスタイルになる らしい."この範囲のコードはCで書かれてるから,g++でコンパイルするときはCだとおもってよろしくしてあげてね"ってことみたい. Cで書かれたライブラリはCで使われることもC++で使われることもあるから,こういうコードでうまくその差を吸収して

    よくみる extern "C" {} と __cplusplus - はこべにっき ♨
    kawacho
    kawacho 2009/11/12
  • C++リファレンス - cppreference.com

    スマートポインタとアロケータ 日付と時間 関数オブジェクト  −  hash (C++11) 文字列変換 (C++17) ユーティリティ関数 pair  − tuple (C++11) optional (C++17)  −  any (C++17) variant (C++17)  −  format (C++20)

    kawacho
    kawacho 2009/10/15
  • 1