C++ | 23:17 前回の記事『プログラム初心者にC言語のポインタを不本意ながら教える羽目になったなら、こう教えると良いよ』でポインタの教え方を書きました。ソレに対して「そもそもどうしてポインタっていう仕組みがあるの?」という質問をもらったので、つら... 続きを読む
What is Hubbub? Hubbub is an HTML5 compliant parsing library, written in C. It was developed as part of the NetSurf project and is available for use by other software under the MIT licence. The HTML5 specification defines a parsing algorithm,... 続きを読む
この文書について † この文書では,gcc を利用している場合に C,C++ において 2GB よりも大きなサイズのファイルにアクセスするための方法を説明しています. この文書を記述するために,以下の文書を参照しました. http://www.ece.utexas.edu/~luo/linux_lfs... 続きを読む
プログラミング主にLinux(DebianとかUbuntu)での環境構築について。コンパイラまずはapt-getでコンパイラをインストールする。UbuntuやDebianなら以下のコマンドでgccやg++および標準ライブラリ等がインストールされる。 $ sudo apt-get install build-essentia... 続きを読む
distcc は分散コンパイラであり C, C++, Objective C や Objective C++ のコードをネットワーク上のマシンを通じて構築できる。 distcc はローカルマシン上でコンパイルするのと同等な結果を得ることができ、 導入したり使ったりするのが簡単で、 しばしばロー... 続きを読む
A multi-language compiler suite for C, C++ and a new language provisionally called N, as well as related tools (parser generator, build system, assembler, linker, etc.). The purpose of the project is to serve as a testbed for compiler technol... 続きを読む
memcachedクライアントはほとんどの言語で実装されており、key-valueベースの何かを作るときにはmemcacheプロトコルをサポートしておくと、クライアントを実装する手間が省けるのでイケてます。しかしmemcachedのテキストプロトコルのような「行」が主体となっ... 続きを読む
変数はメモリに確保される 変数と言うとデータを入れておく箱と言う説明がよく出てきます。まったくその通りなのですが、C言語を使っていく上ではもう一歩踏み込んでコンピューター上でどうなっているのかを知っている必要があります。当たり前のことですが、... 続きを読む
Preprocessor最速だけに催促されたので書きますね!1.基礎印字命令を見てみましょう。lesson1-1.cpp 123 abc AAAAAAAAAAAAAAAAA! と書いたファイルを実行すると、 123 abc AAAAAAAAAAAAAAAAA! このようになります。見てのとおり書いたまんま印字されるので、特... 続きを読む
Twitter上で、@alohakun が言及していた GDB の reverse debugging の機能を使ってみました。GDBの逆実行は、2年前のGCC summitで発表されたものらしい。(実際にオタワで発表を聞いてきたQLeapさん談)Twitter / ベニテングタケ: GDBの逆実行は、2年前のGCC summ... 続きを読む
C言語, 実験先頭からデータを逆順に追加すると処理が少ない?GTK+をはじめとして広く利用されているライブラリのGLibにはリスト構造(自己参照構造体)のデータ型が標準で用意されていて単方向(手前の要素をたどれない): GSList双方向(手前にも後ろにもたどれる): ... 続きを読む
http://www.atdot.net/~ko1/diary/200711.html#d15手近に64ビット環境がない&ちゃんと見ていないので外しているかもしれませんが、http://gcc.gnu.org/bugs.html#nonbugs_c ("Casting does not work as expected when optimization is turned on.")http://mail... 続きを読む
wassr の TL でテストの話があったので、C 言語で使えそうなテストフレームワークを探してみた。CUnit があるのは知っていたけれど。 それぞれの特徴や使い方はこれから調べる。 Effective CUnit は最近も更新されているし、機能改善などはこれからも期待できる... 続きを読む
例の冷却ファンを修理してもらいに秋葉原に行ったのですが、最近の同人ゲームのクオリティはすごいなあと感心していたら、その二階はもっととんでもないことになってて、ひとつ大人になってしまったmikioです。今回は、Tokyo Cabinetのテンプレート直列化機能を... 続きを読む
unix, socket, programmingアーキテクチャに関する質問として、「○○の仕組みってどうなってるの」というようなことを聞かれても、説明下手なせいか、なかなか口で説明できないことがある。そこで「UTSL (ソース読めばいいよ)」と言いたいんだけど、かといって... 続きを読む
OpenSocialとかC++0xとか世の中の流れが早すぎて、いろいろと勉強しなきゃなと焦りつつも、ついついピクミン2にはまってしまうmikioです。今回はTokyo Tyrant(TT)を使ってユーザ独自のストレージシステムを簡単に構築する方法について説明します。 プラグイン... 続きを読む
echo サーバ 次に、C 言語で echo サーバを作ってみましょう。 perl に慣れてしまった軟弱な体には、結構こたえまっせ。 echo サーバを作ってみよう (2) で作成した、最も基本的な echo サーバを C 言語に書き直したものが、 以下のソースです。 echo-server-1.... 続きを読む
Diaryruby-libvirtのソースコードを読んでいたら、何やら怪しげなマクロが。 67 #define generic_get(kind, v) \ 68 do { \ 69 vir##kind##Ptr ptr; \ 70 Data_Get_Struct(v, vir##kind, ptr); \ 71 if (!ptr) \ 72 rb_raise(rb_eArgError, #kind " has been fr... 続きを読む
Contained Within Sun WorkShop Compiler C++ 5.0 Collection - Japanese Find More Documentation タイトル 製品カテゴリ Featured Support Resources Sun Support Center Sun Solve Sun Training Courses コンパイルとリンク この節では、プログラムのコンパ... 続きを読む
C言語において実行時間を測定する為の方法はいくつかある。gettimeofday, clock, getrusage, timesを利用する方法である。ここではこれらの方法について検証してみる。これは2005/12/30時点での情報であり、古い亊が考えられるので注意して頂きたい。さらに、内... 続きを読む