I'm learning C and I am trying to understand calling conventions.
It's pretty simple really ... You will find lots of description of these calling conventions and how they work. The probably-too-obvious part they never state is that when a function is written in a given calling convention, that is how you have to call it if you want it to work.
Most of the C library is _cdecl ... which is why your projects default to that.
Windows and it's 32bit API is _stdcall ... If you check "Enable Microsoft extensions" in your settings you can then select that.
x64 code uses _fastcall ... and that will be your only choice for 64 bit projects.
Each of these conventions has a hidden "decoration" that tells the compiler how to call it, so pretty much as long as you get your entry points correct, the rest is automatic.
As already pointed out, the guts of how this works is not meet for beginners. There are no major advantages of one over another. The best thing is to simply "Call em as they wrote em" and get on with the actual business of learning the language. There will be lots of time to learn the finer points later...