Pointer - Part 1: Khái niệm con trỏ và sử dụng hiệu quả con trỏ trong lập trình C

แชร์
ฝัง
  • เผยแพร่เมื่อ 14 ม.ค. 2025

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

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

    Part 2: th-cam.com/video/Wejq5PSwJuk/w-d-xo.html

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

    Mình thấy có tiếng nói dễ theo dõi hơn là chỉ hiển thị text và animation. Giọng đọc của bạn gì ở video trước rất là rõ ràng, dễ nghe!

  • @Itmylife102
    @Itmylife102 3 ปีที่แล้ว

    em biết kênh này đúng lúc quá, ngày mai e bắt đầu học con trỏ rồi'

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

    cảm ơn anh vì những chia sẽ kiến thức như thế này!

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

    hay quá ad.
    mình tuy học nhiều về C++. Nhưng xem xong video này mình mới thấy có nhiều thứ mình chưa biết mong ad ra thêm video ạ.:)

    • @codeky2261
      @codeky2261  4 ปีที่แล้ว

      Cảm ơn bạn!

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

    video rất hữu ích. hy vọng code kỹ sẽ có thời gian làm thêm nhiều videos hơn

  • @AnhHoang-wi3pv
    @AnhHoang-wi3pv 3 ปีที่แล้ว +2

    hay quá ạ em thích kiểu trình chiếu chi tiết như v chứ nghe thầy cô giảng cũng buồn ngủ :))

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

    cảm ơn anh mong anh ra thêm về chủ đề C/c++ nữa đi ạ

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

    Rất dễ hiểu

  • @minhcuongtran8504
    @minhcuongtran8504 4 ปีที่แล้ว +5

    câu 3 : 2 biến a , b khởi tạo liên tiếp nên khả năng cao là 2 vùng nhớ liên tiếp nhau , phép trừ 2 còn trỏ cho ta khoảng cách dữ liệu (số phần tử) nên kết quả là 1 hoặc -1 tùy theo vùng nhớ nào xếp trước .

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

      Excellent! Xuất sắc quá em. Tự tìm tòi câu trả lời được như vậy là rất good. Anh đánh giá rất cao đó :)
      Chính xác là vậy, a và b sẽ ở 2 vùng nhớ lên tiếp trong stack. Tuy nhiên tùy theo system mà stack có thể expand theo hướng up hoặc down, do đó kết quả sẽ là 1 hoặc -1.
      Phép toán này cho kết quả là uncertainty, chương trình có kết quả khác nhau khi chạy ở những môi trường khác nhau. Điều này cần tránh khi viết chương trình.

    • @minhcuongtran8504
      @minhcuongtran8504 4 ปีที่แล้ว

      @@codeky2261 vâng em cảm ơn a , mong a ra thêm nhiều video để học hỏi thêm

    • @phuoclehuynh3302
      @phuoclehuynh3302 3 ปีที่แล้ว

      Tìm nãy giờ có cmt đúnggggg 🙆🙆🙆

    • @minhcuongtran8504
      @minhcuongtran8504 3 ปีที่แล้ว

      @@phuoclehuynh3302 thanks cậu . k biết sao a này k ra video nữa

    • @phuoclehuynh3302
      @phuoclehuynh3302 3 ปีที่แล้ว

      @@minhcuongtran8504 đơn giản là ảnh bận :))), mình đoán ảnh là dân Embedded engineer mà Embedded thì việc nhiều vô số :)))

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

    Video hay quá a ạ

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

    Các bạn có thể tham khảo thêm về Data Structure Alignment để hiểu thêm về cách các biến được sắp vào bộ nhớ máy tính nhé.
    th-cam.com/video/N2153Hlf_PI/w-d-xo.html

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

    Hóng part 2

  • @xanhbongcai7287
    @xanhbongcai7287 3 ปีที่แล้ว

    tại sao cái video này lại không đc lên 1top trending,tại sao

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

    không lồng tiếng nữa hả a

    • @codeky2261
      @codeky2261  4 ปีที่แล้ว

      ko em, mệt rồi :)

  • @dienvx1997bn
    @dienvx1997bn 3 ปีที่แล้ว +3

    2020 = 0x000007E4, 0x07 là một byte 0xE4 là một byte, vậy lưu như bạn có phải đã sai cơ bản không?

    • @codeky2261
      @codeky2261  3 ปีที่แล้ว

      Đúng vậy đó. Lẽ ra phải là 00 00 07 E4. Mình ko để ý kỹ. Sai rất cơ bản luôn. Thanks bạn nhé :)

    • @long859
      @long859 3 ปีที่แล้ว

      Mọi người có thể giải thích giúp em khúc này được không ạ ?

  • @monguyenngoc8626
    @monguyenngoc8626 3 ปีที่แล้ว

    hay lắm ạ, nhưng hơi nhanh hiu hiu

  • @vanemhoang3685
    @vanemhoang3685 3 ปีที่แล้ว

    1:32 Tại sao 2020 = 07E4H là 4 byte vậy anh, 4 byte là 000007E4H chứ anh nhỉ?

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

      baatj calculator - programmer len

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

      @@hieunguyentrung3026 nhưng 0x07e4 có 2 byte thôi, mày hiểu không, bật cái con gái mẹ không

  • @xanhbongcai7287
    @xanhbongcai7287 3 ปีที่แล้ว

    đập nát cái nút like

  • @swinghand3914
    @swinghand3914 4 ปีที่แล้ว

    câu 3 đáp án là 4 nếu system 32 bit còn 8 nếu 64 bit phải không ad

    • @codeky2261
      @codeky2261  4 ปีที่แล้ว

      Chưa chính xác bạn ơi :)
      Ngoài ra, size của int là 4 bytes trên cả system 32 và 64. Với kiểu long thì sẽ là 4 bytes cho sys32 và 8 bytes cho sys64. Kiểu long long thì luôn là 8 bytes
      docs.oracle.com/cd/E19253-01/817-6223/chp-typeopexpr-2/index.html

    • @swinghand3914
      @swinghand3914 4 ปีที่แล้ว

      @@codeky2261 theo mình hiểu thì kết quả sẽ là 4 do pa pb chứa địa chỉ của a b mà a b kiểu int nên sẽ cách nhau 4 byte vì khi cấp phát thì vùng nhớ cấp phát theo thứ tự biến vào vùng stack nên a b sẽ cách nhau 4 byte nhưng khi mình chạy code trên visual studio thì lại ra 8, mình cũng hơi thắc mắc chỗ này mong ad chỉ giáo

    • @minhcuongtran8504
      @minhcuongtran8504 4 ปีที่แล้ว

      @@codeky2261 tại sao e in thử trong visual thì 32bit thì 4 byte mà 64bit thì 8 byte ạ

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

      à thế thì lạ thật, bản thân mình thường dùng ggc chứ ít dùng visual.
      Mặc dù size của int có thể do compiler quyết định nhưng hầu hết tất cả đều cho size của int là 4 byte (trừ chip 16-bit thì int là 2 byte). Linux và Window 64-bit cũng vẫn cho int là 4 byte, trừ size của long có thể khác (LP64 vs. LLP64).
      Kết quả của 2 bạn cũng khiến mình ngạc nhiên. Hai bạn check thử xem code của 2 bạn có khác với code mình share trên gdb ko nhé:
      www.onlinegdb.com/HyUu1IRsD

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

      @@codeky2261 kết quả là 1 thì phép toán trên con trỏ này là khoảng cách dữ liệu chứ không phụ thuộc vào kích thước đúng k ạ

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

    Q2 : line5 - 100 , line7 - 200

    • @codeky2261
      @codeky2261  4 ปีที่แล้ว

      đúng rồi em :)

  • @KhanhNguyen-eg6vo
    @KhanhNguyen-eg6vo 2 ปีที่แล้ว +1

    Q1: 110 111
    Q2 : 100 200
    Q3 : ra giá trị rác vì trừ địa chỉ

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

    Q1 : line6 - 110 , line7 - 111

    • @codeky2261
      @codeky2261  4 ปีที่แล้ว

      đúng rồi em :)

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

    Q3 : chưa có câu tl :(

    • @codeky2261
      @codeky2261  4 ปีที่แล้ว

      Cách nhanh nhất để biết là thử code trên www.onlinegdb.com/
      Sau đó suy nghĩ xem tại sao lai ra kết quả như vậy :)

    • @wolfguy1056
      @wolfguy1056 3 ปีที่แล้ว

      @@codeky2261 Q3 sao lấy hai địa chỉ trừ nhau vậy ad?