+ 2
What's a different about language = C , C++ and C# and why in this app C language isn't here? Thanks guys
I think C is important for beginner too
2 ответов
+ 1
They are totally different languages, it's just that both C++ and C# is based on C. Also both of them takes an objective oriented perspective of programming, instead of the procedural programming paradigm of C. C# can be considered a pretty high level language, and is memory managed, on the other hand C++ "sits closer to the hardware" and offers you more freedom (what can be dangerous if you don't have knowledge and/or experience, but sometimes is more convinient and performance-friendly).
C++ is compatible with C in a sense that your C code should compile with a C++ compiler as well, and the compiler produces machine code.
C# works differently and has a compiler that produces an intermediate language (IL), which is similar to assembly (but higher level) and when a program runs, it compiles that code to machine code (this is called just-in-time compilation). This allows it to make some optimizations (even based on information it can only get while the program is running on a machine), but not all kind of optimizations can be done here, because some of them require more resources. On the other hand, these more resource intensive optimizations can be done by an "offline" compiler (e.g. C's or C++'s)), so they may produce more efficient code.
Subjective: I find C# to be more friendly/convinient and easier to get into, but as other high level languages, it offers so much, that it may make people totally new to programming ignorant of how things work on a lower level (and so, they write inefficient code without knowing it).
I read here that there is going to be a C course, but it's in the beta testing stage.
0
I don't know about c#, but C++ is object oriented version of C. In other words, c++ is newer version of c.