【C言語】ポインタがわかりません。教えてください。【プログラミング】

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 ก.ย. 2024
  • ポインタを可視化してみた。
    「ポインタ渡し」の解説です。
    キーワード
     アドレス 矢印 番地
    --------- 目次 ---------
    0:00 オープニング
    0:00
    0:00
    0:00
    0:00
    0:00 エンディング
    -----------------------------
    ▼ Twitter
    / musemyuzu
    ▼ TikTok
    vt.tiktok.com/...
    ◇ ゆっくり素材 きつねゆっくり
    www.nicotalk.co...
    #ポインタ
    #c言語
    #C++
    #関数
    #わかりやすい

ความคิดเห็น • 34

  • @にこにこさん-p6q
    @にこにこさん-p6q ปีที่แล้ว +7

    すごくよくわかりました!こうやって、動画で可視化していただくと、自分の頭の中でしなくてはならないことを動画の中でやっていただけているので理解も早いですね!

    • @it_muse
      @it_muse  ปีที่แล้ว +1

      視覚情報にすると記憶にも残りやすいですよね

  • @alucrux
    @alucrux 2 ปีที่แล้ว +8

    Cはどんな時もポインタ使う時は記号使わないといけなかったけど、C++になると参照とかいう便利なものが登場して記号で混乱しなくて良くなったから革命的だよなあ

    • @it_muse
      @it_muse  2 ปีที่แล้ว +1

      見やすくて便利ですよね。

  • @chochomaru_maru
    @chochomaru_maru 2 ปีที่แล้ว +10

    ポインタのポインタが出てくると更に頭がおかしくなるやつ

    • @clover331
      @clover331 ปีที่แล้ว +1

      更にポインタのポインタのポインタが出てくると、、、

  • @Arsche
    @Arsche 3 หลายเดือนก่อน

    ポインタってとある型のインスタンスが存在することが確定されているとき、そのインスタンスを指し示す。
    1を足せば、その足し算が許容されている限りにおいて、あるべき値が存在すべきアドレスを示す。
    これでいい?

  • @itmya4529
    @itmya4529 10 หลายเดือนก่อน +1

    分かりやすかったからチャンネル登録しました

    • @it_muse
      @it_muse  10 หลายเดือนก่อน

      ありがとうございます!

  • @MeSoMush
    @MeSoMush 2 ปีที่แล้ว +4

    アドレスレジスタとデータレジスタって感じでアセンブラ書いてた頃の方が分かり易いよね(でも手間かかるけどねw)

  • @MadTakotarou
    @MadTakotarou ปีที่แล้ว +2

    本にはメモリの番地が難しく書かれてて逆に
    訳が分からなくなって諦めましたw

    • @it_muse
      @it_muse  ปีที่แล้ว

      厳密に書かれすぎていると、理解しづらいですね

  • @あぴよん-i5h
    @あぴよん-i5h 8 หลายเดือนก่อน

    排他的論理OR 使えばテンポラリ変数使わなくてもスワップできますね。
    (引き算だけで同様にできたと思うけど)

  • @かみちょうさぶ-n6e
    @かみちょうさぶ-n6e 6 หลายเดือนก่อน

    先頭アドレスとポインタの違いがわからないので教えてください

    • @it_muse
      @it_muse  6 หลายเดือนก่อน +1

      先頭アドレス…あるデータ構造(例えば配列)の最初の要素を指し示すアドレス
      ポインタ…アドレスを保存するために使用される変数
      つまり、先頭アドレスは特定の位置のアドレスであり、ポインタはそのようなアドレスを保持するための変数です。

  • @Arsche
    @Arsche 3 หลายเดือนก่อน

    むしろ、配列のイメージなの?

  • @Arsche
    @Arsche 10 หลายเดือนก่อน +8

    ポインタに1を足す意味がわからない。

    • @kazuselen
      @kazuselen 2 หลายเดือนก่อน +1

      ポインタが示すアドレスよりもポインタの元の変数の種類で1つ分後ろのアドレスを参照するといった処理がしたいときにやるやつかな?

    • @Arsche
      @Arsche 2 หลายเดือนก่อน +1

      @@kazuselen そこになにもなかったら、どうなんの?

    • @kazuselen
      @kazuselen 2 หลายเดือนก่อน +1

      @@Arsche 初期化されてない場合何が入ってるかはわからないとしか……

    • @nakamura_hipopotas
      @nakamura_hipopotas 2 หลายเดือนก่อน

      @@Arsche言葉遣い改めろあとggrks

    • @ryu2543
      @ryu2543 11 วันที่ผ่านมา +1

      ​@@Arsche未定義動作なので何が起こるか分からない

  • @sollalice_JP
    @sollalice_JP 2 ปีที่แล้ว

    実数渡しと参照渡しかしら。

    • @it_muse
      @it_muse  2 ปีที่แล้ว +1

      参照渡しじゃなくて、ポインタ渡しだと思います!(参照渡しはまだあまり理解してないです…)

  • @Sharpest-Madman
    @Sharpest-Madman ปีที่แล้ว

    これで、参照渡し的な、値渡しを表現しました。
    #include
    int dast(int x, int y)
    {
    int temp;
    temp = x;
    x = y;
    y = temp;
    return x;
    }
    int dast1(int x, int y)
    {
    int temp;
    temp = x;
    x = y;
    y = temp;
    return y;
    }
    int main(void)
    {
    int a,b;
    scanf("%d %d", &a, &b);
    dast(a, b);
    printf("%d %d", a, b);
    printf("%d",dast(a,b));
    printf("%d", dast1(a, b));
    return 0;
    }
    関数内でのみ有効である証明?といいますか。

  • @panpa-
    @panpa- 5 หลายเดือนก่อน

    アスタリスクがなんで付いてるかわからなかったけどポインタのだったか、

  • @xxaio-r2q
    @xxaio-r2q 8 หลายเดือนก่อน

    わかりやすい

  • @むみ-n1w
    @むみ-n1w ปีที่แล้ว

    今ちょっとC言語書いてたので助かりました!!ありがとうございます!!!

    • @キバさんのゲームチャンネル
      @キバさんのゲームチャンネル 5 หลายเดือนก่อน +2

      freeしてくれメンス・・・

    • @むみ-n1w
      @むみ-n1w 5 หลายเดือนก่อน

      @@キバさんのゲームチャンネル ??

    • @ろぜぃ-j2p
      @ろぜぃ-j2p 13 วันที่ผ่านมา +1

      Rustと違ってメモリ管理が安全ではないので、解放しないとやばいことになりますね笑笑

  • @clover331
    @clover331 ปีที่แล้ว

    プログラムカウンターに少し似てる