C Programming Crash Course all-in-one Tutorial (3 HOURS!)
HTML-код
- Опубликовано: 26 авг 2024
- Start your software dev career - calcur.tech/de... 💯 FREE Courses (100+ hours) - calcur.tech/al...
🐍 Python Course - calcur.tech/py...
✅ Data Structures & Algorithms - calcur.tech/ds...
~~~~~~~~~~~~~~~ CONNECT ~~~~~~~~~~~~~~~
✉️ Newsletter - calcur.tech/ne...
📸 Instagram - / calebcurry
🐦 Twitter - / calebcurry
🔗 LinkedIn - / calebcurry
▶️ Subscribe - calcur.tech/sub...
👨🏻🎓 Courses - www.codebreakt...
~~~~~~~~~~~~~~ SUPPORT ME ~~~~~~~~~~~~~~
↪ My Amazon Store - www.amazon.com...
🅿 Patreon - calcur.tech/pat...
🅖 GitHub Sponsors - github.com/spo...
Ⓟ Paypal - paypal.me/calcur
🅑 Bitcoin - 3HnF1SWTzo1dCU7RwFLhgk7SYiVfV37Pbq
🅔 Eth - 0x350139af84b60d075a3a0379716040b63f6D3853
📈 Buy Bitcoin - calcur.tech/cr...
Reserve the Ruby Steel crypto rewards card and get a $25 bonus (use affiliate code "Caleb") - calcur.tech/cr...
notes - calcur.tech/notes-c-programming
C Programming Crash Course - www.learn.calebcurry.com/p/c-programming-crash-course
Timestamps:
1:13 - Intro
7:15 - Linux
17:20 - Basics - Input and Output
33:09 - Variables and Data Types
49:32 - Operators
1:03:13 - Logic (If, Switch, Ternary)
1:19:35 - Loops (for, While, Do While)
1:31:50 - Arrays
1:41:44 - Strings
1:50:00 - Functions
2:07:58 - Creating a Function Library
2:15:55 - Intro to Pointers
2:25:17 - Intro to Structs
2:34:07 - Intro to Memory Management
2:51:16 - Conclusion
Pretty goood 😄😊course to regain confidence in C Programming and getting started for more, thank you for such a Humanly beautiful and humorous C course and do create and 'intermediate C crash course' so that after learning from this we could go there and learn more👍😁. This helped me revise so much, Thank you 😄🎇❣
Thankyou dude I really appreciate it, I already subbed to you and gonna check out your other videos. o7
You know, if you attach the timestamps to the description of the video, then RUclips would show different chapters at the side in a panel and also show the current playing chapter beside the volume bar in the video. Just my suggestion.
i guess it's kinda off topic but does anyone know a good place to watch new series online?
WE LOVEEEEEEEEEEEEEEEEEEEE you soooooooooooo much sir, you're the best teacher in the world and the most professional one😂
Honestly this is the most human and fun programming tutorial I've seen in my LIFE.
I'd love to see more tutorials from you!
Má 10hodinovú verziu 😂😂👌
Please do the intermediate C course! You are a great teacher, congrats!
I hadn't programmed in C in quite some time and was looking for a quick refresher course. This was PERFECT! Thank you Caleb!
02:08:53 Please do create an intermediate C series! Awesome work, keep it up 👍
did he ?
@@fahemzoldyck1729 he created an advanced 10-hour C course video
@@hectorcanizales5900 where I can find it?
One nit at 58:18 - b gets the current value of a _and_ a is incremented, but there's no fixed order for those operations - b does not have to be assigned before a is incremented. Similarly for b = ++a, b gets the current value of a + 1 _and_ a is incremented, but there's no fixed order for those operations - a does not have to be incremented before the result is assigned to b. Depending on the architecture, those operations may even happen simultaneously.
Sorry, it's just that this is something that consistently gets mis-taught - it's always assumed that the increment and assignment happen in a certain sequence, but they don't _have_ to. The operations are _unsequenced_ with respect to each other.
Consequently, expressions like a[i] = i++ and a++ * a++ can give different results on different platforms. The language definition specifies that any expression that attempts to update an object more than once through the evaluation of an expression (a++ * a++), or tries to both update an object and use its value in a computation (a[i] = i++), result in _undefined behavior_ , meaning that the compiler and runtime environment are not required to handle the situation in any particular way.
Bought the BorderLand C/ C++ compiler at a computer show, in Morristown. Been using DJGCC and MS prior.
Have to say, at the time Border Land compiled really quick and they had a Help telephone number you could call.
Very nice.
You're great at conveying this information in an approachable way. I'd love to watch a more advanced course from you.
Wow, this is the most in depth break down of C coding video, I've seen.
Would have been a lot of help in my C programming class, lucky some non-computer science majors were also taking the course,
helps with the scale. LMAO
thank you so much! I just finished the video and followed along in code the whole time. And don't worry this was the most human and least boring programming video i've seen in a while
I haven't used C in a long time. This is, perhaps, the best C primer I have ever seen. Thank you.
28:30 i challenged myself to do this all in gnu nano and so far its going well, hopfully it keeps on going like this 🙂
This is an awesome tutorial! Thank you Caleb. If there is something about file operation and installing more libraries, it will be even greater.
Thank-you for this crash course, Caleb!!
Note on windows you can just enable subsystem for Linux to get Ubuntu and then use bash to do things in your windows file system through the mnt path.
Or just download Ubuntu on virtual machine. I don’t like the subsystem too much.
Caleb, please do an intermediate course! You are a great teacher!
Thank you for this, Caleb. Cheers!
i looove your videos, they're so helpful. I a little bit past halfway on this one, doing a little bit at a time. and it makes me excited to practice what i learn. so as a result I've learned and retained more in from like half of this 3 hour video than from my c class so far hahah thank you caleb! you are a really good teacher :)
I have an exam in a class about C programming in about half an hour, thank you for the video
did u pass I have a C final in 30 min. ggs
@@erikmartinez3859 did you go good man?
@@erikmartinez3859 how did you do?
More please, intermediate C course would be awesome.
You're a gifted teacher, Caleb. Thank you so much!
Thank you call for code, awesome, had no idea, thank you Caleb
thanks, man. finally i understand C's weird pointer syntax. as for suggestions: function pointers, some best practices, and some memory management tricks would be nice if you decided to make an intermediate crash course.
Congrats man, this was really helpfull for me. Never programed in C and still could follow your course and learn a lot
Hey Caleb, i'm a complete noob to programming and just finished watching your course. Enjoyed watching and learning from you!
The only improvement I could think of as a beginner would be writing out the definitions of the different syntaxes and spending a little more time explaining. I had/have a difficult time understanding what each new one means and I mean what it is at it's core. This could just be me wanting to understand something quickly that otherwise takes times and experience coding (in c). In any case a job well done and look forward to seeing new videos!
As with any language, use it! Write your own little programs. As you learned your native language, nobody said you its rules. Nobody wanted to hide the rules, but you couldn't understand it.
An amazing course Caleb. I am confident that I can now code in C too other than Python and C++ in which I could code earlier already. Looking forward to the 10 Hour course as well. Keep doing the amazing work mate.
Hi Caleb, before binging these lectures I'd evaded any association with the C-language family, as I'd held the heuristic it was beyond my conceptual realms (not coming from a core CS background). I really enjoyed your style of delivery!! Keep on throwing carrots out about extended concepts & then coming back to the reference later on...It kept my eyes on the horizon & searching for more...
Keen to check out all your other work from hereon!!
Cheers mate
Great resource anyone taking a C programming course should definitely reference this.
This C programming crash course is awesome. It is very easy to understand and to follow. Thank you for creating it ! I am also interested in advanced C programming, like network sockets programming. Thanks mate ;-)
Small, simple and sweet tutorial, loved it
Thanks a lot Caleb! Please do an intermediate series
i second this
Thank you so much for this guide! I need to learn c quickly for a project, and this has given me all the basics I need, it's been really helpful. Will deffo be checking out any other guides you have :)
Finally i got this from caleb cury ! : )
the most important part of the video is 1:16:17 ... not sure why that timestamp wasn't bookmarked in the description.
This is great! I am watching this to refresh my memory of taking first level C programing. Before I start the second level. Thanks so much:)
Wow, thanks for what you do sharing knowledge to people for free. again thanks bud
You’re welcome. That’ll be $100.
@@codebreakthrough Sure you deserve it not even kidding who shall I make my I owe you out to? hehe
omg this video is so underrated thank you caleb!
Thank you, Caleb! Awesome and fun
Honestly im currently just learning rust, and absolutely loving it, and im only watching this for fun to compare
does anyone gets error for 2d array? 1:41:51 I actually had to use #define instead of adding const . adding const did not solve the issues for me. any suggestions or feedback please? im new to C thank you
You remind me of the new Boston by the way you teach code. Gj and thanks for the upload! I learned a lot.
at 1:40:02 i can not for the life of me understand what "error: variable-sized object may not be initialized except with an empty initializer" wants from me. I initialized the multi-dimensional array properly just like how it was done in the video and made the column a const variable. I tried to declare the matrix in one line of code and initialize it in another yet it didn't work, so i am pretty much stuck here (i tried to google it but it was to no avail). If anyone could offer help it will be much appreciated!
*SOLVED*
_Instead of typing "int const column = 4".. type "enum{ column = 4 }"._
36:03 The sizeof operator returns a size_t, not an unsigned long. Before C99, the standard way of printing a size_t would be type-casting it to an unsigned long then using the %lu specifier. Starting C99, you just pass a size_t and the correct format specifier would be %zu.
please I would love to see your new video, especially intermediate c course. Thank you!
CHECKPOINT: 33:09 - Variables and Data Types
I cannot compile the code at 1:39:40.
here is what I get:
arrays.c: In function ‘main’:
arrays.c:8:5: error: variable-sized object may not be initialized
8 | int studentGrades[][columns] = {
| ^~~
arrays.c:9:38: warning: excess elements in array initializer
9 | {1, 3, 4, 6},
| ^
arrays.c:9:38: note: (near initialization for ‘studentGrades[0]’)
arrays.c:9:41: warning: excess elements in array initializer
9 | {1, 3, 4, 6},
| ^
arrays.c:9:41: note: (near initialization for ‘studentGrades[0]’)
arrays.c:9:44: warning: excess elements in array initializer
9 | {1, 3, 4, 6},
| ^
arrays.c:9:44: note: (near initialization for ‘studentGrades[0]’)
arrays.c:9:47: warning: excess elements in array initializer
9 | {1, 3, 4, 6},
| ^
arrays.c:9:47: note: (near initialization for ‘studentGrades[0]’)
arrays.c:10:38: warning: excess elements in array initializer
10 | {3, 2, 4, 5},
| ^
arrays.c:10:38: note: (near initialization for ‘studentGrades[1]’)
arrays.c:10:41: warning: excess elements in array initializer
10 | {3, 2, 4, 5},
| ^
arrays.c:10:41: note: (near initialization for ‘studentGrades[1]’)
arrays.c:10:44: warning: excess elements in array initializer
10 | {3, 2, 4, 5},
| ^
arrays.c:10:44: note: (near initialization for ‘studentGrades[1]’)
arrays.c:10:47: warning: excess elements in array initializer
10 | {3, 2, 4, 5},
| ^
arrays.c:10:47: note: (near initialization for ‘studentGrades[1]’)
arrays.c:11:38: warning: excess elements in array initializer
11 | {32, 2, 4, 9}
| ^~
arrays.c:11:38: note: (near initialization for ‘studentGrades[2]’)
arrays.c:11:42: warning: excess elements in array initializer
11 | {32, 2, 4, 9}
| ^
arrays.c:11:42: note: (near initialization for ‘studentGrades[2]’)
arrays.c:11:45: warning: excess elements in array initializer
11 | {32, 2, 4, 9}
| ^
arrays.c:11:45: note: (near initialization for ‘studentGrades[2]’)
arrays.c:11:48: warning: excess elements in array initializer
11 | {32, 2, 4, 9}
| ^
arrays.c:11:48: note: (near initialization for ‘studentGrades[2]’)
arrays.c:8:9: error: array size missing in ‘studentGrades’
8 | int studentGrades[][columns] = {
| ^~~~~~~~~~~~~
Please help!
Me neither, have you found a solution already?
as a plus you may if u click on the #define you should find some videos talking about the how to use it in C
Oh hell yeah in vscode. Thank you
Thanks Caleb. Appreciate it. 😊
Would love a similar video on Javascript if you could.
Having a tough time with it from the sources I've used so far.
I’ll keep this in mind! Anything specific you are challenged by?
Caleb Curry Variables & objects in general. Just having a hard time learning the beginner concepts so I can build upon them you know.
~Thank you.
I was watching this on your website but I came here to comment because every time you laugh under your breath while explaining things it inexplicably cracks me up so much hahahaha. Keep this up you are great!
Thank you so much!!! So grateful for you kindness 🙏
Awesome! Thanks Caleb
Great course, thank you CC!
nice one caleb
Your videos are so good thank you so much for putting them on youtube
Took a 2 credit C course, thinking it would be a easy grade because I thought I knew C.
The Fordham professor had pointers to structures to pointers, dereference arrays to pointers, etc on the exam. Never really showed up until midterm after the exam. Made sure to attend every class.
Ended up with a B or a B+ 😒
Hi! Thank you for your videos! I have an exam in an hour and I can't find a good explanation for fread and fwrite, do you have one?
7:23 why?
Thank you Caleb!
Thanks so much Caleb. Can you please resume your C# tutorial series?
Coming soon to a RUclips near you!
Kool course, where is the intermediate course you promised?
Thanks. Your tutorial is top-notch to me.
expected ';' after top level declarator
int function lilTabs(int lenght)
^
;
1 error generated.
Your laugh is amazing . Love it
Checkpoint: 19:53
You not boring. Am learning
I like this crash course so much. Caleb, could you please do a Java programming crash course video?
thanks man
Can you make a more advanced one?
I want to ask you for video about makefiles
you the man DAWG!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
42:45
Thank you
Took a 2 credit C-language course, the final exam consisted of Arrays of Pointers to Structures to deference pointers to a macro with a fstream print of what results are produce??
LOL talk about cryptic coding... all fun for only a 1.5 hour course.
Hey Caleb,
Can you do a crash course on JavaScript
Late to the party, but thank you for the videos!
Question I can start a course in C# or python. I've low basic expirience in C. And not sure which language to choose!
please advise me!!
Im a noobie as well and really loving C, but I reacon Python is easier as it is user-friendly-er, I suppose.
Do you have a link to that syntax guide you reference throughout the video?
I got a segmentation fault error seconds after you mentioned it
sorry but is this only for Linux and Mac? If so, why dont u say it in the title, if not, where can i start watching?
is there a second part to this?
Caleb Curry, you are a man among men. The gods are smiling down upon their beautiful creation. Thank you, and be well, my king :)
is there a msdn page that shows all the formats like %d %lf etc?
0:10:20
YES!
okay I feel you didn't give enough details about strings like you didn't talk strset, strstr, strcmp and the rest
CALEB WHAT COMPILER PROGRAM DO YOU USE!!!
1:39:50
50:00
2:42:00
Caleb you are the fucking man
Are this for absolute beginner s
can somebody help me with any nice code editor for c-program
Caleb, whatever happens, do not stop programming, please
++
2:45:00 😂😂😂😂😂 laugh die
good tuitorial
I have a mac and I am unable to get past 19:07
#include
int main ()
{
return 0;
}
When i try and compile I get an error Undefined symbols for architecture x86_64:
"_main", referenced from: implicit entry/start for main executable
ld: symbol(s) not found for architectrue x86_84
using the same platform as you. all the colors are the same except for "int" its purple.
help me please ?
Hmmm. Not sure. Try void main and don’t return 0? Let us know what the fix is once you get it. Also obviously but make sure you are compiling the correct file. We’ve all been there 😉
Did you install the C/C++ extension (ms-vscode.cpptools)?
Four years late to this, but if anyone else is running into this issue, it's most likely because you have not saved the file prior to running the gcc filename.c command
Great....
28:07
Is this tutorial enough to understand entire c and how it works
Arjun Varma yes. Use this video to start off. Then read a book about advanced data structures and algorithms and try to implement them yourself like bubble sort, heaps, linked lists, Boolean logic, recursion etc
What is the ide your using…?
Visual studio code