C++ Pointers - Finally Understand Pointers

Поделиться
HTML-код
  • Опубликовано: 23 ноя 2024

Комментарии • 218

  • @codebreakthrough
    @codebreakthrough  Год назад +6

    Check out the hands on guide - ruclips.net/video/u5AH2Wn6h1o/видео.html
    Get notified of my upcoming C/C++ Courses - www.codebreakthrough.com/upcoming-c-cpp-courses

  • @slavsquatsuperstar
    @slavsquatsuperstar 3 года назад +377

    I love how casually this guy speaks. Almost like a friend sharing notes :)

  • @bluerie._.3021
    @bluerie._.3021 3 года назад +243

    I thought of an analogy for when you would use pointers:
    Say you ask a friend to do something regarding an essay you have on an online cloud (calling a function), but to do so, you would need to send them the essay (the arguments). You can either:
    1. Send them a copy of the essay via email/message. This would give them the essay as it was when you sent it, and any changes will not transfer between versions. This means that you and your friend would only be able to see each other's essays if you were to directly communicate with each other.
    2. Send them a link to the spot in the cloud where the essay is in the cloud. The link itself wouldn't be the essay, but they would be able to find the essay by following the link and any changes made by either you or your friend will be visible to anyone that looks at the essay.
    Option 1 would be like directly inputting the variable, while option 2 would be like using a pointer.
    Is this right?

    • @MrBloodman123
      @MrBloodman123 3 года назад +20

      Nice analogy,well explained.

    • @Dazza_Doo
      @Dazza_Doo 2 года назад +4

      so... DropBox ?

    • @Mr.Legend_9
      @Mr.Legend_9 6 месяцев назад

      That's the confusing part with reference

  • @NoSpeechForTheDumb
    @NoSpeechForTheDumb 3 месяца назад

    Pointer in C: int *p
    Pointer in C++: std::unique_ptr p

  • @Danieldxc666
    @Danieldxc666 3 года назад +18

    Holy... My professor could never explain this so smoothly in half a semester. Thank you!

  • @Squash101
    @Squash101 Год назад +5

    Certainly the best video on pointers, I wish more people taught concepts like this, rather than just showing a bit of code and syntax

  • @kevinsuckiel4885
    @kevinsuckiel4885 4 года назад +86

    Finally! Big help for me right now during my class. Thanks dude.

  • @CodeSadhu
    @CodeSadhu 4 года назад +222

    Goddamn you explained this so wonderfully in 15 mins that my professors couldn't in an entire semester lol

    • @AdamMohamed-cq9fv
      @AdamMohamed-cq9fv 3 года назад +10

      literally very fucking true

    • @shivangm24
      @shivangm24 3 года назад +4

      Yes

    • @humann5682
      @humann5682 3 года назад +4

      Almost as though a lot of CS professors aren't always sure of what they are teaching....almost lol!

    • @cheesypizzajokes
      @cheesypizzajokes 2 года назад

      @@humann5682 or just dont care

    • @asmallguy6124
      @asmallguy6124 2 года назад

      @@humann5682 wow didn't know this was common until now lmao.

  • @bradizawsome
    @bradizawsome 3 года назад +15

    You should seriously be a professor or something. You literally made this so much easier for me to understand and you're the only RUclipsr I can find that teaches before coding which is why I only watch your videos lol

  • @spacemangalaxy7932
    @spacemangalaxy7932 3 года назад +12

    I don't want to say other lessons bad, it's the best of 5 which I saw about pointers in recommends, and... really understand what it is and how to use it after watching. But, why is here low number of likes, not even 500. Everyone, put likes, this lesson deserves it!

  • @ciaspo
    @ciaspo 3 года назад +41

    Caleb, you figure out what might be difficult to understand and you explain it very clearly. You are a great teacher, keep up the good work! Thank you very much :)

  • @Eddy-ly2ml
    @Eddy-ly2ml Год назад +3

    8:27 was the point of no return where i crossed into learning about pointers all thanks to you Caleb! I love your explanation videos! Thank you for making teaching and explaining these concepts!

  • @zinnkazama5022
    @zinnkazama5022 3 года назад

    highly recommended video if anyone didn't get the pointer concept or don't know the use of a pointer, watch this video. Really helpful for me and thank you for the excellent explanation.

  • @Theanine3D
    @Theanine3D Год назад +1

    I've been struggling with understanding pointers in my C++ course, but your explanation made so much more sense! Thank you!

  • @AleCat97
    @AleCat97 2 года назад +4

    awesome! in my class they are teaching us about pointers and new, delete, null, which seems like the old and harder way of doing things, but thanks for mentioning it in your video! most ppl skip it because its not used frequently but when we have to follow a curriculum from univ is hard to avoid and find info about those. thank u!

  • @ryancarney7616
    @ryancarney7616 Год назад +1

    I was really confused about the meaning of the asterik when using pointers, and how it can be used in a couple different ways. This video really helped clear that up. Thanks!

  • @krup9898
    @krup9898 8 месяцев назад

    This helps a lot. I am taking a college coding class and when we just started talking about references and pointers it was confusing. This teaching series is helping a lot though, thank you! Very fun to watch😊

  • @lemmiix
    @lemmiix 6 месяцев назад

    watched like 10 videos about pointers. That's the one that made me understand how and why use pointers

  • @liminal27
    @liminal27 3 года назад +8

    int* x seems more readable to me than int *x - it makes it more clear that it's an "int-pointer" ie. its own type, distinct from int. I know there all kinds of arguments about this but I don't care because I'm always right.

    • @n00blamer
      @n00blamer 2 года назад

      I'm with you on this one, all the arguments are blah blah blah multiple variables blah blah.. we're just right it's that simple. :)

  • @BlackMantisRed
    @BlackMantisRed 2 года назад +1

    I heard someone say you needed points to program a game, I had him explain to me what pointers are but I didn’t understand it or why I would need it, thanks for the great video

  • @ericvt
    @ericvt 2 года назад +3

    been trying to understand this since i was in university. you explained it more clear than my profs lol

  • @ParkerHix
    @ParkerHix Год назад

    I rarely comment on videos but just wanted to say that I've watched this vid on pointers and your vid on references. You explain things very fluidly and casually, I really appreciate it.

  • @greywolf271
    @greywolf271 2 года назад +1

    I learnt more about pointers after learning C from the K&R textbook and Michael Daconta's C++ Pointers and Dynamic Memory Managements. Kernighan and Ritchie explain pointers very well and Daconta's book is highly recommended for furthering your knowledge.

  • @larrym1983
    @larrym1983 2 года назад +1

    Oh my god! I luv your explanation of pointers! My professor at school is so confusing so I had to go to youtube to find a better explanation. Your video at explaining pointers is very clear!

  • @cheesypizzajokes
    @cheesypizzajokes 2 года назад +1

    0:17 it was at this moment that I knew, I'm subbing

  • @mrboyban
    @mrboyban 3 года назад +7

    Hey Caleb, thanks for make this content available,I'm feeling less dumb now.

  • @DarkReaperK97
    @DarkReaperK97 Год назад +1

    Thanks for uploading. Pointers are terrifying for(almost) every student learning C++.

  • @cloudytrichomes
    @cloudytrichomes 3 года назад

    That pointer pun. *chef kiss*

  • @slayingdemon8059
    @slayingdemon8059 Год назад

    So nicely explained man . Really like your casual speaking explanation.

  • @CapitalCH
    @CapitalCH Год назад

    thank you for posting. i did not understand and my professor hardly explained it.

  • @oisinfeeney3471
    @oisinfeeney3471 4 года назад +6

    Cheers lad, these videos are a great help for uni

  • @cclemon2531
    @cclemon2531 Год назад

    thx for helping me learning pointer please continue create more tutorial video!!

  • @a_boy_can_dream
    @a_boy_can_dream Год назад +1

    You explain things really well. Subbed!

  • @anastasiak8589
    @anastasiak8589 3 года назад +2

    Great help in understanding pointers! Thanks Caleb.

  • @kenheisenberg5223
    @kenheisenberg5223 Год назад +1

    This guy is so funny. And very well explained a very difficult and confusing subject.

  • @splatlandss
    @splatlandss 2 года назад

    i had to learn this in the lecture hall equivalent of a hot-locked car, and picked up nothing. I was really scared, but this saved me. And I love CS, so learning this and thinking of how this can improve my code gives me tingles :D

  • @rhysrittgers2183
    @rhysrittgers2183 7 месяцев назад

    I hope you are making millions off these videos because you are helping millions. If you started a goFundMe and asked all your viewers to donate a dollar we would all do it and you would be rich

  • @kylethelincey
    @kylethelincey 3 года назад

    I'm so glad you make videos. You explained this in a way that was very easy to understand. Thanks!

  • @skypuff
    @skypuff 4 года назад +4

    I swear I always have fun and enjoy c++ when I watch caleb curry

  • @nickdgreat6741
    @nickdgreat6741 4 года назад +6

    Great video, really helped me get a handle on the concept while keeping it interesting. Thanks for the help and keep doing you bro!

  • @davidscott7435
    @davidscott7435 3 года назад

    I hate visual studio. My professor also just says “here’s your assignment good luck” so I’m on my own. This helped a lot thanks!

  • @johnpaulpineda9821
    @johnpaulpineda9821 3 месяца назад

    One of the best explanation 😮

  • @MehrdadKarami-x9w
    @MehrdadKarami-x9w Год назад

    Good job on explaining it. Thank you very much. Rock on!

  • @impooser
    @impooser 2 года назад +1

    Very clear and articulated. Keep it up!

  • @juniornyembe4841
    @juniornyembe4841 3 года назад +1

    i'm 22 seconds into the video and ive already clicked the like button and subscribed, only from that Pointer joke. amazing

  • @n.lwhitaker572
    @n.lwhitaker572 4 года назад +3

    Hallelujah for this man. Fighting the good fight

  • @diane7250
    @diane7250 Год назад

    Caleb you are one of those guys >>

  • @fenfire3824
    @fenfire3824 3 года назад +7

    Pointers are great for "hacking" other software, if it does not have an api. You can find out the memory addresses and read the data of other stuff and use it in your own software. Pretty sure it is violating some policys in a way, but sometimes it is an unfortunate necessarity. It is basicly the same as using cheat engine. Said differently, you can use a tool like cheat engine to find out memory locations and use this in your programs for whatever you need it.

  • @manikazemi5556
    @manikazemi5556 3 года назад +1

    also, we can call "&" (address of operator) as ampersand operator.

    • @lmaoforgotmaname129
      @lmaoforgotmaname129 3 года назад

      Thanks for your comment, you actually helped me to understand my Problem ^^.
      Please stay well and keep on :D.
      Greetings from Switzerland!

  • @andrewnicastro8400
    @andrewnicastro8400 2 года назад

    after weeks of not understanding pointers, I am finally granted some clarity.

  • @kristiantorres1080
    @kristiantorres1080 2 года назад

    Where's the second part? Amazing video

  • @muhammadluqman3452
    @muhammadluqman3452 2 года назад

    God bless you my friend your videos are the best!

  • @gaurishagrawal9404
    @gaurishagrawal9404 3 года назад +6

    I dont know why, but even though C++ is harder...typing it is so much more satisfying .....atleast for me.

  • @trumbaron
    @trumbaron Год назад

    int x = 5
    int *p = &x (adress of)
    x = 5
    &x = 0x5ffe94 (some adress in memory)
    p = 0x5ffe94
    *p = 5

  • @fernm2861
    @fernm2861 2 месяца назад

    @8:27 "c programming... disgusting..." I'll repeat that after you as many times as you want! 🙂 But seriously, I love the way you teach!

  • @calebfurley3784
    @calebfurley3784 Год назад

    At the end of the video you started firing them little neurons I got, then said “but let’s not get into the weeds we’ll just stop here” 😭 good video though, I wanna move from Java to c++ and this was one of the first videos I watched, so thanks.

  • @wilbertraymundrayos4175
    @wilbertraymundrayos4175 4 года назад +5

    Finally, the video/topic I've been waiting for

  • @Silvertestrun
    @Silvertestrun Год назад +1

    Thank you!

  • @WilsonLee123
    @WilsonLee123 3 года назад +6

    The pointer pun 👌 LOL

  • @apollosun2913
    @apollosun2913 3 года назад

    Good, good, good. The book I was learning from told about assigning and dereferencing with * but never said anything about using *x , for example, by just referring to x. Now I know. Also, this video made me feel mad clever, like one of those beautiful mind guys writing nifty equations on a chalk-board that nobody else can understand.

  • @DMS20231
    @DMS20231 Год назад

    No offense intended to some of our brethren, but some of them are impossible to understand. I love how clearly and casually Caleb speaks.

  • @mellow_frequencies
    @mellow_frequencies 2 года назад

    Very well explained, thanks Caleb!

  • @ecmrn
    @ecmrn 9 месяцев назад

    Finally I feel like I understand!

  • @islemghz3780
    @islemghz3780 2 года назад

    great video he explain like talking to a friend

  • @minh5532
    @minh5532 2 года назад

    :)) To me , it's the first time I see someone writing by left hand . Awesome

  • @shehab976
    @shehab976 3 года назад

    Wow!...so much informative...everybody explains shit in my life about that pointer thing....now i know why c,c++ is that faster❤️

  • @dawg6408
    @dawg6408 9 месяцев назад

    1 year after high school i'm finally kind of understanding

  • @aronas1353
    @aronas1353 Год назад

    YOU sir are a dead set LEGEND!

  • @alexandermilleriii499
    @alexandermilleriii499 3 года назад +3

    4:09 As if Hexadecimal "numbers" makes sense lol... hex includes letters. I would just say hexadecimal characters...

    • @codebreakthrough
      @codebreakthrough  3 года назад +2

      Well in hex A-F would be numbers not characters. All kinds of confusing 😉

    • @vlogtomejr.1919
      @vlogtomejr.1919 3 года назад

      I suppose the term "numerals" is likely most appropriate for this context.

  • @elliotdowney9915
    @elliotdowney9915 3 года назад +1

    Bless you Caleb!

  • @tabletalenovo9695
    @tabletalenovo9695 2 года назад

    9:10 then why not just write int* y = &x and then cout

  • @222ableVelo
    @222ableVelo 3 года назад +5

    This guy just explained pointers the best I've ever heard it explained...........
    and I'm still confused. lol Whoever was the architect of doing it this way in the beginning needs to be tarred and feathered.

  • @kristiantorres1080
    @kristiantorres1080 2 года назад

    subscribed right after the pointers joke

  • @LowLevelStudio
    @LowLevelStudio 8 месяцев назад

    Just try combination of & and * until it works

  • @jercodesthings
    @jercodesthings 2 года назад

    The pun gave you an instant like. Thank you for the laugh and the info!! :)

  • @safebox36
    @safebox36 2 года назад

    "If you're new to the subject it can be a little bit complicated."
    I learned C++ in university 4 years ago and I still google when to use & and *

  • @paigen8842
    @paigen8842 3 года назад +2

    thanks caleb love you

  • @earthian2777
    @earthian2777 2 года назад

    Thanks for the pointers

  • @fryfly5599
    @fryfly5599 2 года назад

    9:10 "because I told you to."

  • @gerardstric9246
    @gerardstric9246 8 месяцев назад

    Thank you for this 🙌

  • @nathanmiller9218
    @nathanmiller9218 3 года назад +1

    Is it possible or allowed to define an integer pointer as int* y = &x as opposed to int *y = &x? I know c++ ignores spaces in most situations, but does asterisk placement make a difference in that statement?

    • @burningMallowz
      @burningMallowz 3 года назад

      No, it does not make a difference. Defining a pointer as:
      int* y = &x;
      int *y = &x; or
      int * y = &x;
      are basically the same thing.

    • @josephzamora2676
      @josephzamora2676 2 года назад

      Int* just makes more sense

  • @Lin_The_Cat_
    @Lin_The_Cat_ 2 года назад

    Just *had* to subscribe after that pointers pun.

  • @Oberon621
    @Oberon621 2 года назад

    Hey Caleb, hope you're doing well my dude

  • @maxim25o2
    @maxim25o2 3 года назад

    You are great teacher!

  • @LorenzoMezzabarba
    @LorenzoMezzabarba Год назад

    pointer are way easier that i thought, nothing compare to recursion

  • @radioactium
    @radioactium 2 года назад

    if you're initializing the variable *y and setting it to the address of x (&x), why does that same *y call the value at that address and not the address itself when you use it later in the code, since you set it to the address in the beginning? that seems inconsistent to me

  • @ec_7006
    @ec_7006 3 года назад

    So what's the difference between references and pointers?

  • @johnnamtae9610
    @johnnamtae9610 3 года назад +2

    Caleb wazzzzup brothaaaaaaa!

  • @louishamelers8904
    @louishamelers8904 3 года назад

    It's at 0:17 that you get my like

  • @burburchacha
    @burburchacha 3 года назад

    8:28

  • @beckypaterson3929
    @beckypaterson3929 3 года назад

    super helpful! Thank You!

  • @소피-e2e
    @소피-e2e 2 года назад

    Nice! Thank you! I guess that is why people prefer to declare with int* y instead of int *y to avoid confusion
    the only thing i dont like about this video is the fact that you use blackboard it hurts me soo much haha

  • @Diebe-ks8ws
    @Diebe-ks8ws 3 года назад

    Caleb, is it Indian Curry or English Curry?

  • @nicolascrespo4643
    @nicolascrespo4643 2 года назад

    Thanks again! I got the point

  • @bd_harold7752
    @bd_harold7752 11 месяцев назад

    I like this explanation

  • @tommarino736
    @tommarino736 4 года назад +2

    What program do I need to study this?

    • @tommarino736
      @tommarino736 3 года назад

      @Cat Person With Anxiety I mean in order for me to run the codes that I made what software do I need ?

    • @tommarino736
      @tommarino736 3 года назад

      @Cat Person With Anxiety do I need to download that? How?

  • @DragonRazor9283
    @DragonRazor9283 3 года назад +1

    Thanks!

  • @TheSimplyJJP
    @TheSimplyJJP 2 месяца назад

    Why the heck is it always the youtube videos that make sense and not the professors.

  • @gianniskallionis3300
    @gianniskallionis3300 8 месяцев назад

    thank you buddy!

  • @KnitterX
    @KnitterX 3 года назад

    So what's a use case where a pointer would be necessary? If I understood correctly all the examples you are giving here could also be done with references. In fact, you used the same examples in the references video.