2013-05-20から1日間の記事一覧

広域変数が配置されるセクション

※この実験は、以下の環境で実施しました。 $ gcc -v gcc バージョン 4.7.3 (Ubuntu/Linaro 4.7.3-1ubuntu1) $ as -V GNU アセンブラ バージョン 2.23.2 (i686-linux-gnu)、BFD バージョン (GNU Binutils for Ubuntu) 2.23.2 を使用 $ ld -v GNU ld (GNU Binu…

ポインタ変数のconst指定

#include <stdio.h> char s1[] = "This is array."; char *s2 = "This is pointer."; int main() { return 0; } このプログラムについて、nmコマンドでシンボルテーブルをダンプしてみると、以下のようになります。2フィールド目の「D」とは、その変数が、.dataセクシ</stdio.h>…

配列とポインタの違い(p87)

変数名とは「変数名」とは、データの格納領域の先頭アドレスを、human-readableに置き換えたシンボル名を指します。IPアドレスとホスト名の関係ですね。シンボル名に対応する格納領域の先頭アドレスは、プログラム内では「&」演算子でアドレスを表示したり、…