タグ

programmingとCに関するTrueSevenTHのブックマーク (2)

  • 普通のやつらの下を行け: Cで動的コード生成・実行 - bkブログ

    普通のやつらの下を行け: Cで動的コード生成・実行 スクリプト言語には動的にコードを生成して実行する機能を持ったものが多くあります。 普通のやつらの下を行けの第3回として、今回は C による動的なコード生成と実行に取り組んでみたいと思います。 今回書いたコードの main() 関数は以下のようなものです。 int main(int argc, char **argv) { assert(argc == 2); define(int, add, (int x, int y), "{ return x + y; }"); define(int, mul, (int x, int y), "{ return x * y; }"); define(int, add_argv1, (int x), "{ return x + %d; }", atoi(argv[1])); printf("%d\n"

  • どのようにしてlibcは後方互換を保つのか?(その1)

    [最新版] [一覧] << == >> 予定 2008/10/20(Mon): 月命日 TODO 99:ネコのいない生活に慣れる 2007/1/18(Thu)○ どのようにしてlibcは後方互換を保つのか?(その1) 国際標準規格(ISO)としてのCは現在のところ ISO/IEC 9899:1990 (C90) 制定 - 米国内規格 ANSI X3.159-1989(C89) と同じ ISO/IEC 9899/AMD1:1995 (C90:AMD1 あるいは C95) 追補 - 国際化対応関数(mbrtowcなど)の追加 ISO/IEC 9899:1999 (C99) 改訂 - 変更点多すぎなんで このへん読んでください と3つのバージョンが存在します、これらはすべて後方互換が保障されています。 ソースレベルでの後方互換とは C90で書かれたソースコードは一切の修正なしでC99でコンパイル

  • 1