I spent decades writing C/C++ code daily, and the best bit of advice anyone ever gave me stuck with me that entire time relating to pointers. Not sure if it is in this video, as I didn't watch it all ... When you are reading the declaration of a C/C++ variable, read it right to left in English and the meaning is obvious e.g. What is a variable defined as ... int * const * Backward .. it is a Pointer to a constant pointer to an integer e.g. What is a variable defined as int [] ** Backward .. it is a Pointer to a Pointer to an Array of Integers Easy :)
This is actually really useful. I finally wrapped my head around pointers and this helps solidify my learnings. Thanks Tony! I’ll remember this comment of yours when I’m a super C++ dev 😅🥲
I completed this course in a week and enjoyed learning it all. Harsha is the best guru of C and C++ programming and I learned a lot from him. Harsha why so OP. I know that he is no more and he died on June 15 2014 at just age 32 but I know that he made underdogs the winner finally and inspired others to make many more Brilliant Programmers from whole the world and not just INDIA.
@@alvintayedzerwa8954 the longer it is the best it is, fun fact is I am implementing these on my program codes as of my daily schedule and still revising it in different intervals to be updated and strong in the basics.
Note about doing stuff like: int* p; It kinda make sense to put the star next to the data type... because it's an "Int pointer" named p. This is fine as long as you declare only one variable per line. Some people like to declare multiple variables at once (I don't recommend doing this but it's doable...). If you do so, only the first variable will be a pointer: int* p1, p2; p1 will be a pointer to an integer... But p2 is an integer. This is why you should put the asterisk on the variable name instead: int *p1, *p2;
Thank you, legend. I discovered this video years after your friend and co-teacher passed, but his and your legacy lives on. Thank you for everything. Much love from Nairobi, Kenya. May he smile with the angels.
I miss this guy, whom I will miss him throughout my life, who helped me passing 3rd semester in University, in Subject Data Structures and Algorithms..... Love you My Code School... Love you Free Code Camp Org...
This was very helpful, thanks! Here are some minor corrections: - At 0:41:00 : in the discussion of pointer-to-pointer, variable r should hold the address of q (=205), not the value of q (=215). - At 1:28:00 : print(c2[1]) is only possible via printf(c2 + 1) and this outputs 'e', not 'l'.
I must express the greatest possible gratitude for this course. The material is comprehensive, well-thought out and superbly structured. All of my implicit questions (i.e. "I know that I don't understand something, just not know what") are vanishing rapidly, and I haven't even finished the course yet! Thank you, thank you! To listen to this course was probably one of the best decisions I've made as a first year in university.
I have been working as a software engineer in very big semiconductor company and implement functional safe programs. Still i came here to learn something more about pointers and i wasn't disappointed.
If you're as confused as me after checking the size of A in the sumOfElements function (around 1:15:27) and finding that it yields 8 instead of 4, note that in x64 architectures pointers are assigned 8 bytes. Since A is technically a pointer in that context and that's why you'll get 8 bytes of size
The size of other types will also change dependent on the settings of the compiler. Even comparing with the same CPU, some of these are simply choice and this is why we have the "size of A" function to check that they are acting as expected. For example a "long long int" default could be 32 or 64 or 128 bits depending on language compiler and target CPU, and you can manually change this compiler configuration. This is because you may be compiling the same source code several times for different CPUs. ie for some cases int is 16b, short is 8b, and both long and long long types are 32; for clang and gcc default for AMD64 is int=32 and long-long=128b, but you could add a compile time flag to change the int to 64b or everything to 32b. Float names are more standard so a double is 64bit everywhere I have looked. But the "long double" can often create a mistake, some interpret long-double as IEEE-754 float128, some simply ignore the long and use 64bit double; and others interpret long-double as an 80bit "extended precision" float; 80bit matches the x87 floating point hardware unit that is combined with some CPUs. And a few terrible implementations (*cough*python numpy*cough*) have been known to actually use 80bit when you use explicit "float128" or "float96" keywords in your source. These 80bit floats may actually be padded with zeros to use 12 or 16 bytes of memory (96 or 128bits) to keep the typical 4 or 8 byte alignment of memory addresses and cache lines, but the x87 math unit only uses 10 bytes.
llo, I am from Peru, I am 25 years old and I have been learning programming for several months. And I wanted to understand pointers in C++, and this is the best VIDEO explained in detail that I found, Thank you so much!!! Now I even know how memory is managed in C++. Thank you!
Very clearly explained. I did C programming in 1990 as a part of my university project (I am Mechanical Engineer). I thought that everything is forgotten, but when I watched this video, everything resurfaced as if I had studied all this just yesterday.
This guy is one of the best instructors I have heard on the web. Speaks very good English and explains things in a very logical, easy to follow manner. Superior instructor. Great job!
He was one of indias greatest coders and a genius, he was fluent in multiple languages and was the red and highest rated coder from india dude was truly a prodigy, #RIP
To Those who are wondering if its a good course to learn Pointers in C or C++ , Let me tell you ITS ABSOLUTELY AWESOME!!!! This is by far the most detailed and indepth explanation of pointers and how its stored inside memory. Also it deals with all the relevant functions like malloc, calloc, realloc, free , new, delete. Pretty much this is the most comprehensive and to the point Video you can find on pointers. I am pretty much at the end as of rn and I can confidently say, If you want to learn pointers either for development perspective or data structure perspective. JUST FREAKING GO FOR IT!!
This channel helped me a lot in clearing my fundamentals, I'm so happy to see that the code school is getting the recognition it deserves .. RIP legend
I never knew this man before....but after watching this and datastructures video I just want to see the person who taught me and saved me.......I came to know that he died in an accident. You are a talented person and your soul should rest in peace ......so tragic for a person who selflessly shared his knowledge...😔😔
I am studying computer science in school now. And we have C language in our syllabus now - definitely UA-cam has taught me way more than my school teachers. And now I am proceeding to learn the intermediate of C language by learning the concept of pointer. I have already seen the first chapter of this video and have found it quite useful. Thanks to the person who have explained every thing on that chapter in an easy way.😀
Thank you!!! I've been trying to wrap my head around the concept of pointers for the longest time, and this video definitely makes it stick a lot better. When I was taking my programming courses, my instructor kind of just brushed over this topic, but this requires a deeper, more in-depth approach.
The simple bubble sort loop at "Function pointers and callbacks" is slightly inefficient. I edited the loop to be a bit more efficient. Instead of ( i < n ) and ( j < n-1 ), I transformed it to ( i < n-1 ) and ( j < n-1-i ) This prevents unnecessary overchecking. Here are the resulting performance results of a practical 12-element integer array: {5,2,4,1,10,6,7,3,12,9,11,8} OUTPUT: 5 2 4 1 10 6 7 3 12 9 11 8 Checks: 66 (My code) Swaps: 19 1 2 3 4 5 6 7 8 9 10 11 12 5 2 4 1 10 6 7 3 12 9 11 8 Checks: 132 (His code) Swaps: 19 1 2 3 4 5 6 7 8 9 10 11 12 I don't know why but I always seem to nitpick on these things! Optimize, optimize, optimize...
So I have a job interview an hour later. Came here to refresh my concepts on pointers and memory management. My only regret is why didn’t I finish it earlier. Awesome content. Much love to mycodeschool.
@@piesekleszekpiesek Thank You for following up 😄 I have completed three technical viva. Waiting for the call to final management viva. Let's see what happens. 😄🤞
Most Tricky Character Array and Pointers Part 2 1:41:00 some pointer syntax 1:59:35 pointer expression 2:05:17 Confusions * 2d Array Pointers (not working in cpp) 1:42:50 (sol of this: 1:59:00)
@@waitwhat3547 the video that you see here is roughly 7 years old. Mycodeschool was a team of devs from Microsoft and most of these were made by Harsh Srinanyana aka Humblefool. He was the highest rated programmer on topcoder India. He passed away in a tragic road accident in 2014.
@@TT-ud5gf not this one. This video and other public videos on UA-cam made by mycodeschool are by Animesh, one of their cofounders. After the tragic death of harsha, he was shock trodden and lost courage to upload more videos. The last video he uploaded was in 2016.
I came here to learn about pointers, but got to learn more than that which included how C++ organizes stuff in the memory. This is a very good crash course as it explores different use cases of pointers and has sufficient depth in each topic.
The best video on pointers on youtube. Please whoever visits this video do watch it. He has convered everything that we need to know. 100% worth watching whole video without skipping.
Thanks a lot for uploading this video. Read the article about the tragic story of Mycodeschool and I felt really sad reading the story behind it. But, at last, they have inspired me to work hard and be passionate about coding. I Hope Animesh is doing good in his life and RIP brother Harsha(Humblefool).
1:32:51 In the while condition we're dereferencing c so that it can identify the null character and in the printf we're doing the same so that printf fumction can print the string .. and c++ is just moving the pointer to the next character(by default it point to the h of hello) so that loop can continue.
In pointer to pointer concept : Value stored in "r" is 215 which I guess should be 205 if not mistaken 🙂BTW very well explained ! Use of pen and diagrams really helps to understand things better. And course content is very well covered. Lucky to have this in my library .🙏
can't forgot how my journey start with learning programming, i was try to learn the pointers in the time of traveling and i am just remember this moment and want to share it
*Pointers were one of the topics I used to hate in school. I watched like 5 minutes of this video and I am liking the topic already. I have saved this video to my playlist and will watch this completely after my work today.*
1:53:06 is the answer 3 logic: b is pointer to array b[0] de refferencing an array returns the address of its 1st element which is 400 *(400+1), solving the bracket first e have 400+1(4) //size of integer being 4 *(404)=>3
This is the best series on pointer I have found. Its verbatim to my class workbook in regards to the depth of concepts but way easier to understand then looking at written code in a book with terrible explanation. Thank you!
As a python programmer the concept of pointers was the only thing which was difficult to wrap my head around. After watching only the first hour of this video I now have a much better understanding. Thanks!
At 38:41 r = &q; // r is address of q *That means value of r is 205 (not 215).* ∴ Value of r is 205, value of *r is 215, value of **r is 225, value of ***r is 6, value of **q is 6, value of *p is 6. value of x is 6.
My undergraduate major was Computer Science, C was my first programming language. Pointers confused me so much, it became a nightmare to me and I did really poorly in that course. After that, I never really did well in any programming language. I am going to watch this video carefully and kick that nightmare out of my life.
Pointer is a vital concept in understanding a lot of programming languages, for example, in JAVA, even though there is no "pointer" concept here, but the reference variable assigned to a new constructed instance is the interpretation of pointer in JAVA. So I think it can be kind of hard for people without C/C++ background to learn JAVA virtual machine, memory management etc.
Incredibly valuable lesson! he had a talent for clear and thorough explanation which is something that is rare and precious. It saddens me to learn of his passing... Rest in Peace
My C++ textbook gives an example of Call-By-Value using an array , saying that passing an array as an argument to a function would copy the whole array and it would be a waste of memory. Turns out this was very, VERY wrong. I'm so glad that I watched this video.
It happens when we point to a member of a struct. example: Color = (P-> MainColor) Pointers are very powerful, they allow you to use Functions and structs Vector also. as: Initializes "P" as function address. *P(param1,param2,etc). The explanation, although old, is helpful.
Great Course! I've finished it now and I can say I am more confident working with pointers than ever before. Many thanks for the work to make this explanation easy to understand. The next course for pointers in C i wanna check is titled "Pointers in C for Absolute Beginners" that was uploaded on this channel.
Thank you so much! I have completed the first hour and learned a lot! Thank you sir!!!!! God bless you all and your team for providing free content with outclass quality! Please keep up the good work. I am learning programming for a business project, and haven't found any better video lecture so far. I even tried some payed courses but this is simply on the next level. Thank you again!
First of all really these are greatest videos to many students, where several things were not understood, watching these videos make someone getting enlightened, i still remember I came to know about mycodeschool, and had recommended to several people but they didn't watch, but i kept watching, later I see there were no more videos, I was completely surprised what happened why this got stopped all of a sudden today only i came to know about the story. Really this is sad to know, but the work will remain as standalone masterpiece, with little time they made this impact if it had continued it would made an astonishing impact to several peoples around world. Thanks Harsha I wanted to thank several times but came to know about your story today. Thank you very much.
the explanation of function returning pointers was the best. explaining by actually showing how the memory is allocated in stack was so good. thank you so much.....
Thanks very much for providing this easy to understand and comprehensive account of pointers, datatypes and memory allocation. The importance of the type of a pointer has been missed in other accounts I've read. So when you increment a char pointer it increments by 1, when you increment an int pointer it increments by 4. All makes sense once you've watched this....
Really a genius way and made it so easy to understand the giant topic. I completed the full video without knowing who Harsha is!!! Really a great guy. RIP! more strength to the family and friends. Thanks to Animesh too :)
Thank you, thank you, thank you. The concept of pointers has been a very confusing concept in my journey to learn to code in C/C++. This helps a lot!!! Thanks.
One of the best if not the best courses I've seen on UA-cam, the explanations and examples are excellent. I'd recommend this course for anyone who programs, not just people who program in C/C++. You learn so much about how programs work and how to manage memory.
"Pointers as function returns in C/C++" doesn't start at 2:36:48 as stated in the video description but at 2:47:58. Btw, this course is amazing. For the basics of pointers I think this is still the best video even to this day (July 5th 2023).
Thank you so much for this great tutorial. It really helped me understand the topic. It also makes me appreciate languages like C# that have garbage collection.
I spent decades writing C/C++ code daily, and the best bit of advice anyone ever gave me stuck with me that entire time relating to pointers.
Not sure if it is in this video, as I didn't watch it all ...
When you are reading the declaration of a C/C++ variable, read it right to left in English and the meaning is obvious
e.g. What is a variable defined as ... int * const *
Backward .. it is a Pointer to a constant pointer to an integer
e.g. What is a variable defined as int [] **
Backward .. it is a Pointer to a Pointer to an Array of Integers
Easy :)
This is amazing, thank you!
Great tip, thank you.
Love you ❤
It is amazing how just a simple change at how you approach a problem makes things click.
This is actually really useful. I finally wrapped my head around pointers and this helps solidify my learnings. Thanks Tony! I’ll remember this comment of yours when I’m a super C++ dev 😅🥲
I completed this course in a week and enjoyed learning it all. Harsha is the best guru of C and C++ programming and I learned a lot from him. Harsha why so OP. I know that he is no more and he died on June 15 2014 at just age 32 but I know that he made underdogs the winner finally and inspired others to make many more Brilliant Programmers from whole the world and not just INDIA.
It took me a bit longer than a week to complete.
@@alvintayedzerwa8954 the longer it is the best it is, fun fact is I am implementing these on my program codes as of my daily schedule and still revising it in different intervals to be updated and strong in the basics.
Everytime he says thanks for watching, I so desperately want to thank him for teaching. You're a legend, Harsha and you'll never be forgotten 🙏
couldn't agree more
the guy single handedly taught me more about pointers than my teachers at college.
Wait… did bruh die? 😟
@@Chavez3d yup was killed in road accident.
@@manoj6247 :( that makes me sad
Note about doing stuff like:
int* p;
It kinda make sense to put the star next to the data type... because it's an "Int pointer" named p. This is fine as long as you declare only one variable per line. Some people like to declare multiple variables at once (I don't recommend doing this but it's doable...). If you do so, only the first variable will be a pointer:
int* p1, p2;
p1 will be a pointer to an integer... But p2 is an integer. This is why you should put the asterisk on the variable name instead:
int *p1, *p2;
nice fact
Thanks helpful little fact
hmm good stuf 😉😉😉
at 28:00 after defining p0 , i am unable to print p0....and also upon dereferencing it is giving weird outputs....someone please tell...
you saved me a LOT of time
This was created almost 8 years ago! Still not outdated. Best explanation on pointers ever
So far
How?
C tutorials never become outdated
K&R was published in 1978 and it is still not outdated
The guy who created this is a legend, read about him, I learnt pointers and data structures from this guy almost 6 years ago
Thank you, legend. I discovered this video years after your friend and co-teacher passed, but his and your legacy lives on. Thank you for everything. Much love from Nairobi, Kenya. May he smile with the angels.
I miss this guy, whom I will miss him throughout my life, who helped me passing 3rd semester in University, in Subject Data Structures and Algorithms.....
Love you My Code School...
Love you Free Code Camp Org...
This was very helpful, thanks!
Here are some minor corrections:
- At 0:41:00 : in the discussion of pointer-to-pointer, variable r should hold the address of q (=205), not the value of q (=215).
- At 1:28:00 : print(c2[1]) is only possible via printf(c2 + 1) and this outputs 'e', not 'l'.
yes yes yes yes
I agree with you
omg yes !
came looking for this comment to confirm if I was right
Omg, yes! That's why I had to watch that segment about pointer to pointers twice before finally getting it.
I feel smarter by just clicking on the video.
You'll feel like Einstein after completing the video!
Hi
Please create video on C programming for beginner 😀😀😀
You'll feel like God after watching all of their videos!
@@everydayintroswithouttext5012 Ok🥰😊🤘👍
You are not alone... these are not ordinary topics. I feel humbled
I must express the greatest possible gratitude for this course. The material is comprehensive, well-thought out and superbly structured. All of my implicit questions (i.e. "I know that I don't understand something, just not know what") are vanishing rapidly, and I haven't even finished the course yet! Thank you, thank you! To listen to this course was probably one of the best decisions I've made as a first year in university.
RIP LEGEND LORD HARSHA. Your contribution to my life is way beyond words.
I have been working as a software engineer in very big semiconductor company and implement functional safe programs. Still i came here to learn something more about pointers and i wasn't disappointed.
Three and a half hour video on just pointers
We are going to take over the world after watching this
hahaha
Ur epic😂😅
this or generate so many runtime exceptions that the world we'll never be the same ever again. ahaha
*Points to you* delete...er.... delete [] . Not 'We'... I'm going to take over the world.
i can feel the power growing in my hands :D
finally I completed it... Pointers topic explained beautifully ...Thanks a lot .
Its Definitely the best explanation available on youtube period.
I agree, and ive seen a lot
If you're as confused as me after checking the size of A in the sumOfElements function (around 1:15:27) and finding that it yields 8 instead of 4, note that in x64 architectures pointers are assigned 8 bytes. Since A is technically a pointer in that context and that's why you'll get 8 bytes of size
thanks
Thank you!
Thanks!
The size of other types will also change dependent on the settings of the compiler. Even comparing with the same CPU, some of these are simply choice and this is why we have the "size of A" function to check that they are acting as expected. For example a "long long int" default could be 32 or 64 or 128 bits depending on language compiler and target CPU, and you can manually change this compiler configuration. This is because you may be compiling the same source code several times for different CPUs. ie for some cases int is 16b, short is 8b, and both long and long long types are 32; for clang and gcc default for AMD64 is int=32 and long-long=128b, but you could add a compile time flag to change the int to 64b or everything to 32b.
Float names are more standard so a double is 64bit everywhere I have looked. But the "long double" can often create a mistake, some interpret long-double as IEEE-754 float128, some simply ignore the long and use 64bit double; and others interpret long-double as an 80bit "extended precision" float; 80bit matches the x87 floating point hardware unit that is combined with some CPUs.
And a few terrible implementations (*cough*python numpy*cough*) have been known to actually use 80bit when you use explicit "float128" or "float96" keywords in your source. These 80bit floats may actually be padded with zeros to use 12 or 16 bytes of memory (96 or 128bits) to keep the typical 4 or 8 byte alignment of memory addresses and cache lines, but the x87 math unit only uses 10 bytes.
subscribe and watch: ua-cam.com/channels/E6t_LLEfDXfOO6XDgD3u2A.html
llo, I am from Peru, I am 25 years old and I have been learning programming for several months.
And I wanted to understand pointers in C++, and this is the best VIDEO explained in detail that I found,
Thank you so much!!! Now I even know how memory is managed in C++. Thank you!
Very clearly explained. I did C programming in 1990 as a part of my university project (I am Mechanical Engineer). I thought that everything is forgotten, but when I watched this video, everything resurfaced as if I had studied all this just yesterday.
It's amazing that this is free. These concepts are explained so well and clearly. Thank you!
Yes, they are wonderful people, and the curriculum on their website has been really helpful to me ❤❤
This guy is one of the best instructors I have heard on the web. Speaks very good English and explains things in a very logical, easy to follow manner. Superior instructor. Great job!
@Tongue- tied7 checkout his channel ua-cam.com/users/mycodeschool
His English is perfect
He was one of indias greatest coders and a genius, he was fluent in multiple languages and was the red and highest rated coder from india
dude was truly a prodigy, #RIP
@@zaks7 What happened to him?
@@deltag0ny224 He died in a car accident, search about humblefool.
But i was wrong, this video is by his partner/best friend who is still ok.
These legends recorded this video back in 2012. When learning to code on YT was barely a thing. Way ahead of their time.
Legends never dies.......
Such frienship is immortal....
That is what the real meaning of love is.......
🙏🙏🙏🙏🙏🙏
To Those who are wondering if its a good course to learn Pointers in C or C++ , Let me tell you ITS ABSOLUTELY AWESOME!!!! This is by far the most detailed and indepth explanation of pointers and how its stored inside memory. Also it deals with all the relevant functions like malloc, calloc, realloc, free , new, delete. Pretty much this is the most comprehensive and to the point Video you can find on pointers. I am pretty much at the end as of rn and I can confidently say, If you want to learn pointers either for development perspective or data structure perspective. JUST FREAKING GO FOR IT!!
This channel helped me a lot in clearing my fundamentals, I'm so happy to see that the code school is getting the recognition it deserves .. RIP legend
I never knew this man before....but after watching this and datastructures video I just want to see the person who taught me and saved me.......I came to know that he died in an accident.
You are a talented person and your soul should rest in peace ......so tragic for a person who selflessly shared his knowledge...😔😔
How was the data structures video?
This vidio alone carries my entire programming semester
I am studying computer science in school now. And we have C language in our syllabus now - definitely UA-cam has taught me way more than my school teachers. And now I am proceeding to learn the intermediate of C language by learning the concept of pointer. I have already seen the first chapter of this video and have found it quite useful. Thanks to the person who have explained every thing on that chapter in an easy way.😀
Thank you!!! I've been trying to wrap my head around the concept of pointers for the longest time, and this video definitely makes it stick a lot better. When I was taking my programming courses, my instructor kind of just brushed over this topic, but this requires a deeper, more in-depth
approach.
I have already watched this series on mycode school many times earlier, and I can approve, best on the entire internet.
This video is amazing - a hidden gem of UA-cam. I learned more about pointers in 30 mins than in hours and hours of reading in textbooks and SO.
watched 5 years back. still worth to watch. missing content from mycodeschool.
I'm at 1:05:27 and I have already started fantasizing about impressing class girls lol😁😁
Thanku so much
The simple bubble sort loop at "Function pointers and callbacks" is slightly inefficient.
I edited the loop to be a bit more efficient.
Instead of ( i < n ) and ( j < n-1 ), I transformed it to ( i < n-1 ) and ( j < n-1-i )
This prevents unnecessary overchecking.
Here are the resulting performance results of a practical 12-element integer array:
{5,2,4,1,10,6,7,3,12,9,11,8}
OUTPUT:
5 2 4 1 10 6 7 3 12 9 11 8
Checks: 66 (My code)
Swaps: 19
1 2 3 4 5 6 7 8 9 10 11 12
5 2 4 1 10 6 7 3 12 9 11 8
Checks: 132 (His code)
Swaps: 19
1 2 3 4 5 6 7 8 9 10 11 12
I don't know why but I always seem to nitpick on these things! Optimize, optimize, optimize...
I still remember in 2013-14 these were the set of videos I watched to learn data structure and algorithms. And these were so intuitive.
So I have a job interview an hour later. Came here to refresh my concepts on pointers and memory management. My only regret is why didn’t I finish it earlier. Awesome content. Much love to mycodeschool.
Did you get it :D?
@@piesekleszekpiesek Thank You for following up 😄 I have completed three technical viva. Waiting for the call to final management viva. Let's see what happens. 😄🤞
@@monemahmed6830 what happened at the end :)?
Most Tricky
Character Array and Pointers Part 2 1:41:00
some pointer syntax 1:59:35
pointer expression 2:05:17
Confusions
* 2d Array Pointers (not working in cpp) 1:42:50 (sol of this: 1:59:00)
This man was a legend amongst competitive programmers! #RIP Humblefool!
RIP? The guy sounds so young, what happened? how did he die?
@@waitwhat3547 the video that you see here is roughly 7 years old. Mycodeschool was a team of devs from Microsoft and most of these were made by Harsh Srinanyana aka Humblefool. He was the highest rated programmer on topcoder India. He passed away in a tragic road accident in 2014.
@@Ash-em5pm oh no - is he the one that taught us with this hand written illustration?
@@TT-ud5gf not this one. This video and other public videos on UA-cam made by mycodeschool are by Animesh, one of their cofounders. After the tragic death of harsha, he was shock trodden and lost courage to upload more videos. The last video he uploaded was in 2016.
You guys made me very sad
I came here to learn about pointers, but got to learn more than that which included how C++ organizes stuff in the memory. This is a very good crash course as it explores different use cases of pointers and has sufficient depth in each topic.
So far, an hour into this excellent tutorial and no ads.
The best video on pointers on youtube. Please whoever visits this video do watch it. He has convered everything that we need to know. 100% worth watching whole video without skipping.
Thanks a lot for uploading this video.
Read the article about the tragic story of Mycodeschool and I felt really sad reading the story behind it.
But, at last, they have inspired me to work hard and be passionate about coding.
I Hope Animesh is doing good in his life and RIP brother Harsha(Humblefool).
1:32:51 In the while condition we're dereferencing c so that it can identify the null character and in the printf we're doing the same so that printf fumction can print the string .. and c++ is just moving the pointer to the next character(by default it point to the h of hello) so that loop can continue.
finally finished lecture ...My college takes atleast $50 for this course and only taught starting 30min of this lecture
The time I studied this in the early 2000´s, I had no rescue from youtubers. I think this is a valuable content
In pointer to pointer concept : Value stored in "r" is 215 which I guess should be 205 if not mistaken 🙂BTW very well explained ! Use of pen and diagrams really helps to understand things better. And course content is very well covered. Lucky to have this in my library .🙏
yes, value stored in r should be 205 but not 215
can't forgot how my journey start with learning programming, i was try to learn the pointers in the time of traveling and i am just remember this moment and want to share it
*Pointers were one of the topics I used to hate in school. I watched like 5 minutes of this video and I am liking the topic already. I have saved this video to my playlist and will watch this completely after my work today.*
did you watch? do you know pointers now?
Have you learned pointers at school? We were only taught some basic concepts such as variables and cycles, and also some algorithms
@@geutk4162 Nope. I just relized I forgot to watch this video after work that day!
@@aravindkramesh haha
Well, it's never too late
1:53:06 is the answer 3
logic:
b is pointer to array b[0]
de refferencing an array returns the address of its 1st element which is 400
*(400+1), solving the bracket first e have 400+1(4) //size of integer being 4
*(404)=>3
This is the best series on pointer I have found. Its verbatim to my class workbook in regards to the depth of concepts but way easier to understand then looking at written code in a book with terrible explanation. Thank you!
PS: Use '%p' instead of '%d' for printing the actual addresses via printf function.
or use %X modifier for better print. i personally prefer 0x%X
If mycdschl continued their course it would be the most subscribed channel in cs courses.
MyCodeSchool made their last upload 4 years back. But today also their content are outstanding.
As a python programmer the concept of pointers was the only thing which was difficult to wrap my head around. After watching only the first hour of this video I now have a much better understanding. Thanks!
You're welcome
At 38:41
r = &q; // r is address of q
*That means value of r is 205 (not 215).*
∴ Value of r is 205,
value of *r is 215,
value of **r is 225,
value of ***r is 6,
value of **q is 6,
value of *p is 6.
value of x is 6.
Thought i misunderstood
Thanks!
My undergraduate major was Computer Science, C was my first programming language. Pointers confused me so much, it became a nightmare to me and I did really poorly in that course. After that, I never really did well in any programming language. I am going to watch this video carefully and kick that nightmare out of my life.
Same! let's do it together!
So how did it go...
Studying for an exam to get into CS and this has helped me a lot. Thank you very much
good luck 👍 🍀
i did not mean this sarcastically btw lolol
@@missgirl8210 haha its all in good spirit!
Harsha was a legend. Started my coding from his channel.
What do you mean, was?
@@johnnycincocero He died in a car accident 😭
@@johnnycincocero Please read the story put up in description link. Its an amazing one.
@@jatinthakur4252 omg
@@jatinthakur4252 Damn. Sorry to hear that.
Pointer is a vital concept in understanding a lot of programming languages, for example, in JAVA, even though there is no "pointer" concept here, but the reference variable assigned to a new constructed instance is the interpretation of pointer in JAVA. So I think it can be kind of hard for people without C/C++ background to learn JAVA virtual machine, memory management etc.
Incredibly valuable lesson! he had a talent for clear and thorough explanation which is something that is rare and precious. It saddens me to learn of his passing... Rest in Peace
very shocking!! RIP
It's truly astounding how easy the internet makes learning these days. Thanks for the tutorial, my guy.
you know it's gonna be a good video as soon as you hear the indian accent , god bless everyone that teaches us something important
This teacher is one of the best coding teacher I have ever seen... Unfortunately he is no more.. Rip legend
Harsha is the boss. He explains it very well.
I have watched his lectures 2 years ago and they are in my mind yet.
Actually Animesh was the presenter in the video while Harsha was far good in his coding concepts and thus they both were a very good team.
omg. I have to spend 24 hours in 3 day to watch this video. Everything that is taught in video are so amazing.
I was just working on a project having trouble understanding pointers, I needed this. Thanks.
this is probably the best video ever made on pointers.
If anybody is confused at 38:38, the value of r should be 205 and not 215
That's what I was thinking. Thank you! :)
My C++ textbook gives an example of Call-By-Value using an array ,
saying that passing an array as an argument to a function would copy the whole array and it would be a waste of memory.
Turns out this was very, VERY wrong.
I'm so glad that I watched this video.
I woke up here
Me too 💀
An absolute knowledge treasure in understanding pointers in C!
Their course was the first course i did 5 years ago for pointers and data structures. It was really great course.
It happens when we point to a member of a struct. example: Color = (P-> MainColor)
Pointers are very powerful, they allow you to use Functions and structs Vector also. as: Initializes "P" as function address.
*P(param1,param2,etc).
The explanation, although old, is helpful.
well done! your usage of a tablet/pen helps a lot to visualize concepts like stack, and heap.
Great Course! I've finished it now and I can say I am more confident working with pointers than ever before. Many thanks for the work to make this explanation easy to understand.
The next course for pointers in C i wanna check is titled "Pointers in C for Absolute Beginners" that was uploaded on this channel.
Thank you so much! I have completed the first hour and learned a lot! Thank you sir!!!!! God bless you all and your team for providing free content with outclass quality! Please keep up the good work. I am learning programming for a business project, and haven't found any better video lecture so far. I even tried some payed courses but this is simply on the next level. Thank you again!
First of all really these are greatest videos to many students, where several things were not understood, watching these videos make someone getting enlightened, i still remember I came to know about mycodeschool, and had recommended to several people but they didn't watch, but i kept watching, later I see there were no more videos, I was completely surprised what happened why this got stopped all of a sudden today only i came to know about the story. Really this is sad to know, but the work will remain as standalone masterpiece, with little time they made this impact if it had continued it would made an astonishing impact to several peoples around world. Thanks Harsha I wanted to thank several times but came to know about your story today. Thank you very much.
Animesh and Harsha, you both are all time great for me ❤️
the explanation of function returning pointers was the best. explaining by actually showing how the memory is allocated in stack was so good. thank you so much.....
I really needed to learn more about pointers, thanks free code camp❤️
Thanks very much for providing this easy to understand and comprehensive account of pointers, datatypes and memory allocation. The importance of the type of a pointer has been missed in other accounts I've read. So when you increment a char pointer it increments by 1, when you increment an int pointer it increments by 4. All makes sense once you've watched this....
love the fact that i can go fullscreen on my ultrawide with this video
Jeez, 25 minutes of this video will going to save all quarter for my OS class...
RIP. The legend he was. Humblefool.
Is he dead ?
@@TheTariqibnziyad who died?
@@TT-ud5gf Harsha, the guy who was presenting the video 😢
@@TheTariqibnziyad unfortunately it's been very long now. He was one of my initial gurus.
@@ShubhamSharma-tn3wm where is his page? How did we lose him?
I presented my final project and this video was fundamental for me to code it.
Thanks a lot
The voice is of Animesh, this particular video is also made by Animesh.
Really a genius way and made it so easy to understand the giant topic. I completed the full video without knowing who Harsha is!!! Really a great guy. RIP! more strength to the family and friends. Thanks to Animesh too :)
What a gifted teacher!
I know this stuff, but it was nevertheless a pleasure watching the entire video.
This is so old i passed my 12th and did c++ there thru these videos.... Thanks a lot.
Thank you, thank you, thank you. The concept of pointers has been a very confusing concept in my journey to learn to code in C/C++. This helps a lot!!! Thanks.
What about recursion 😂
@@thethorff5881 is that really hard
One of the best if not the best courses I've seen on UA-cam, the explanations and examples are excellent. I'd recommend this course for anyone who programs, not just people who program in C/C++. You learn so much about how programs work and how to manage memory.
This is brilliant! All case scenarios, in depth explanation... Brilliant! Thank you
"Pointers as function returns in C/C++" doesn't start at 2:36:48 as stated in the video description but at 2:47:58.
Btw, this course is amazing. For the basics of pointers I think this is still the best video even to this day (July 5th 2023).
very informative , detailed explanations which are very useful to understanding this difficult concepts
Just watched the entire thing. Took 9 hours to complete it. Totally worth it.
Thanks Quincy for this course. I know you're behind this great idea of bringing their videos together to make this all-at-one-place video.
who is Quincy? btw this gold video is 8 years old made by animesh sir
@@sra9an938 Quincy Larson is the founder of FreeCodeCamp
@@gamoholic7653 oh yes thanks, I got to know that little late
i've been struggling finding the best explanation for pointers but this video really is the best. props to Harsha
best video ever. Keep doing this kind of videos, where you get inside of difficult topics and make it easier to us. Thanks FreeCode.
I have been trying to wrap my mind around pointers for a while now. This video is priceless! Thank you! Thank you!
Thank you so much for this great tutorial. It really helped me understand the topic. It also makes me appreciate languages like C# that have garbage collection.
I could not understand Pointer before. But now I understand Pointer by looking this video.
MyCodeSchool - The best channel for learning programming. Wish the tragedy had not happened and the channel continued... 😔