タグ

pointerに関するlamichのブックマーク (4)

  • C言語のポインタはメモリを想像できれば理解できる | 100% Pure NEET

    最近、C言語のポインタは難しいって話をプライベートでして、そのときにした説明をまとめてみた。 コンピュータのメモリがどのようになっているか想像する これはHex Fiendというソフトを使ってあるファイルのHexダンプを見たものだけど、コンピュータのメモリも同じような構造になっているのでこれを使う。類似のソフトはHex Editorなどで検索すれば出てくるだろう。 コンピュータのメモリはこうしたずらずらと数値が記録されたマス目の連続のような構造をしている。Hex Editorなのでこれは16進数で表現されている。1バイトは16進数2桁で表現される。Hex Editorでは普通は1バイトごと、あるいは4バイトごとに区切って表示する。このエディタは一区画ごとに8桁の16進数があるので4バイトごと。 ポインタを使うのに重要なのはたぶん、こうしたメモリの内容を頭の中で思い浮かべることができることだ

  • The 5-Minute Guide to C Pointers – Dennis Kubes

    If you are reading this you want to know more about c pointers. That’s a good thing. Even if you don’t program in C very often, understanding pointers gives you a deeper understanding how programming and memory works “under the hood”. Learning pointers will make you a better programmer. In this post we will start with variables and memory. We will look at how that relates to pointers. We will talk

  • JavaScriptでの配列のコピー - STONEDSOUL

    JavaScriptで配列をコピーするのにちょっとハマったので、調べたことを書いておく。以下のコードは llevalで結果を確認した。 JavaScriptでは、以下のようにすると配列のコピーではなく、元の配列への参照となる。 var a = [1, 2, 3]; var b = a; print(a); //[1, 2, 3] print(b); //[1, 2, 3] b[3] = 4; print(a); //[1, 2, 3, 4] print(b); //[1, 2, 3, 4] シンプルな配列ならば、次のようにしてコピーできる。 for文を使う。 var a = [1, 2, 3]; var b = []; for (var i=0, l=a.length; i<l; i++) { b[i] = a[i]; } print(a); //[1, 2, 3] print(b); /

  • 鼻息の荒くてカツレツの悪いC言語講座 C言語のポインタを理解する

    こんにちは、ブタマン君です。友人のあいだでもポインタの概念を理解できていなさそうな人がいるので、作ってみました。かなりごまかしている部分がありますが、ポインタの概念だけは理解していただけるかと思います。当初音声をつける予定はなかったのですが、DM-H220というマイクを中古で入手したので使って見ました。もちろん鼻息つきです。拙作のリストはこちら→mylist/2328239 【図の説明を見たい方】は第2回→sm1925147へどうぞ             【訂正】すみません、訂正です。 ×a[1000] ○a[999] / ×b[1000] ○b[999] / ×malloc(10, sizeof(int)) ○calloc(10, sizeof(int)) または○malloc(10 * sizeof(int))

    鼻息の荒くてカツレツの悪いC言語講座 C言語のポインタを理解する
  • 1