タグ

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

タグの絞り込みを解除

Cに関するfuttafuttaのブックマーク (2)

  • C言語のポインタ構文のつまづきどころ - Qiita

    C言語のポインタの構文でつまづきやすいポイントについて紹介し、このように考えるとわかりやすいという私なりの方法も書かせていただきます。規格書の内容を解説しているわけではないのでご承知おきください。 ポインタとは ポインタ (pointer)とは、あるオブジェクトがなんらかの論理的位置情報でアクセスできるとき、それを参照するものである。有名な例としてはC/C++でのメモリアドレスを表すポインタが挙げられる。(ja.wikipedia.org) ふむふむ。ポインタ=メモリアドレスだな。 注)コメントにて指摘あり。 ポインタ型変数 はい、これがポインタです。って書いても、何を指しているのかよく分からん。*がポインタなのか!と思うひともいれば、*pointerがポインタなのか!と思う人もいるだろう。いや、そもそもポインタってメモリアドレスってさっき言うたやん?これのどこにメモリアドレスがあるんだ?

    C言語のポインタ構文のつまづきどころ - Qiita
    futtafutta
    futtafutta 2015/03/17
  • mrubyを小さくしたり大きくしたりした話 - スペクトラム

    最近mrubyにコミットしているので自分の活動をまとめます。 mrubyを小さくした話 mrubyでは、文字列の扱いはシンプルにchar*を構造体でラップしていました。 struct RString { MRB_OBJECT_HEADER; mrb_int len; union { mrb_int capa; struct mrb_shared_string *shared; } aux; char *ptr; }; そのため1つの文字列毎に、構造体分と文字列分の2回のmalloc/freeが発生していました。 ここでCRubyのRStringを見てみます。 #define RSTRING_EMBED_LEN_MAX ((int)((sizeof(VALUE)*3)/sizeof(char)-1)) struct RString { struct RBasic basic; union {

    mrubyを小さくしたり大きくしたりした話 - スペクトラム
  • 1