[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

I am planning to start learning C. But there's seems to

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 58
Thread images: 3

File: cute anime pic 0365.jpg (498KB, 1200x1600px) Image search: [Google]
cute anime pic 0365.jpg
498KB, 1200x1600px
I am planning to start learning C. But there's seems to be quite a few derivatives (C++, C#, C*) Which one should I start learning? What's the similarities and differences in their syntax?
>>
>>59146241

start with C .. then look at C++ and C# and you will notice they are very similiar in syntax.

Biggest differences are the available libraries.
>>
>>59146251

pretty much this

starting with C is about the best thing you can do
>>
C is insecure, deprecated peace of mess. Check out Rust.
>>
>>59146265
Thank your for your """contribution""".
>>
>>>/sqt/ is good for stuff like this.

Polite sage.
>>
>>59146241
post full pic

And on topic, learn C quickly. For the higher abstractions stuff look C++, it runs on more platforms than C#.
>>
>>59146265
Is it an organized effort by Rust fags to badmouth C on this board lately?
>>
>>59146404

yes they spread out from reddit ... its a gospel now
>>
>>59146241
Post full pic or sauce or more pics from that folder while we help ya
>>
>>59146241
C++ and C# are literally Java so just learn Java after C
>>
>>59146644
>c++ is the same as java
not really anon, but then again im basing this on what i remember and it's been quite a while since i used java
>>
for newfags
>C
for gay winfags
>C#
for fags that want to compile stuff
>C++
for fags that want to pseudo compile stuff
>Java
>>
Tfw nobody mentions go
>>
>>59146739
well of course syntax is a bit different
>>
>>59146265
Only if you're an idiot.
>>
Do you know how to program? Start with Python if not.
>>
>>59148933
I actually think starting out with C can help enforce basic programming principles. Because Python is dynamically typed and has fancy iterations, I think it holds peoples' hands too much.

We used to have our 101 class in C then it was switched to Python for some reason, and tons more people have had issues with it. Python will obscure away data types, you'll never know how to write a while loop well for a while, and so on. C can actually be a pretty good primer on programming, I think.
>>
C isn't very useful to new programmers, I don't know why/g/ always recommends it. What are you planning to write daemons or device drivers or something?
>>
>>59149036
Sameposting because I forgot to mention something.

I've been thinking more and more recently that a scheme based language would make for a good language to start with. I've been having oodles of fun with Typed/Racket and that could be used as a good starting point to teach programming.
>>
>>59149036
Any programming course worth taking would hammer in those principals regardless of what language you're using. The issue with C is that with elementary knowledge of programming you really can't use it for anything. With Python you can start making very useful scripts right away
>>
>>59149041
C is useful to learn and once you do it gives you a ton of control over what's going on.
>>
>>59149109
Which I'd argue is not useful at all for new programmers.
>>
If you're not writing low-level programs, is there a reason to be using C? I want to use and learn it, but I mostly write scripts for myself and I want a real-world application.
>>
Depends on what you want to do.
If you want to shit out useful programs before dying of old age, C++ is the way to go.
IF you want to go low level driver/backend stuff, C gets the job done there.

Personally I'd recommend learning a scripting language like python, since it is easy enough that you can shit out useful scripts extremely quickly.
>>
>C
Very close to what the computer is actually doing. I think every programmer should do at least some small projects with C to deepen their understanding of how code and hardware work together. Also pretty much everything has been built on C, so in the long run some knowledge will help you when you run into problems when working as a programmer.

>C++
A superset of C. Made for writing highly performant code, provides a lot of data structures and algorithms that are pretty much as fast as they can get. There's so much magic going on during compilation that it'll take years to understand it all. A huge amount of desktop software has been written in C++, and it's also the base for pretty much all modern game engines.

>C#
Microsoft's answer to Java. A rather high level language that's also performant, but due to garbage collection and other factors, it can't really compete with C and C++ when it comes to raw speed and control over the underlying machine. Very pleasant to write, and modern Windows apps are often written in C#. Nowadays open source but hardly used outside the Microsoft ecosystem.

In my opinion, you should try all of them, in no particular order. You could try writing a simple mouse driver with C, do some hackerrank or codeforces assignments with C++, and write an editor with C#. Each of the three have their place in the world, and people who come spouting nonsense like "X is better than Y" are just some weirdos who probably don't work as professional programmers.
>>
File: 1485463825623.jpg (3KB, 125x123px) Image search: [Google]
1485463825623.jpg
3KB, 125x123px
>>59149222
>Very close to what the computer is actually doing.
People keep spouting this myth lol
>>
>>59149244
quick, a language that has lower level features than C has
>>
>>59149260
he's a dumb frog poster, would you ever expect quality posts from him?
>>
>>59149260
x86 assembly
>>
>>59146265
GTFO
>>
>>59146265
Rust Internet Defense Force is active lately
>>
>>59149260
VHDL
>>
>>59149499
winner winner chicken dinner
>>
>>59149499
It isn't a programming language as such though, it's a hardware description language and isn't compiled.
>>
>>59149569
Depends on how you define programming, and also how you define compile. VHDL could perfectly well be used to make software, it's just not what it was made for. Also it arguably is compiled, both when simulated and when synthesized. At least compiling is what the programs that compile it calls it.
>>
>>59146241
It depend of what you want to do ?
Video games or other desktop application (with qt essentially but others are quite good too )? C++ ( the best )
Just start to learn the basic of programming and low level ? C ( the harder )
Doing some desktop application without knowing everything you do ? C# (the easiest)
>>
>>59149222
good post anon
>>
>>59149244
>>59149272
>>59149499
>>59149695

point proven anyway, C is as low as you can get without touching some kind of assembly-type of language, and thus being
>Very close to what the computer is actually doing
in comparison with every other language out there
>>
>>59149222
well deserved trips
>>
you had enough replies post sauce you op
>>
C# is basically Java. C++ is its own beast, complex as hell. C is simple but outdated.

They really serve different purposes.
>>
Sauce is Bishoujo Magekyou - Norowareshi Densetsu no Shoujo, a visual novel.
https://vndb.org/v8038

Should be somewhere in here too:
https://hitomi.la/galleries/678923.html
>>
>>59146241
I wouldn't put C# in the same category as C.
>>
>>59152169
Also:
https://chan.sankakucomplex.com/post/show/3874954
>>
>>59151620
>without touching some kind of assembly-type of language
Which basically means you're high up in the air and not low at all.
>>
>>59146241

C is just a basic procedural language.
C++ has a ton of additional crap piled on top. It's powerful as hell but it's also a complete fucking mess.
C# is Java except less shit and less portable.
>>
File: 1370542013453.png (516KB, 720x540px) Image search: [Google]
1370542013453.png
516KB, 720x540px
C = latin
C#, C++ = roman languages
Java = creole language
>>
>>59146241
learn C++, but keep in mind C++ is full of features, and C++11 and C++14 added a lot more, you don't need to learn them all. I still think it's better to learn than C because it fixed some archaisms od C
>>
>>59146241
C++ is the only one that's really related to C. I'd suggest starting with C (so you can learn the basics) and then learn C++. My university started us with C++ (the curriculum is heavy on software engineering/OOP), and it was really too much at once, we were learning about inheritance and virtual functions before we really had a solid grasp of how pointers work. If you really want to learn C++ properly, you should probably make sure you fully understand the C-like subset of C++ first, at which point you might as well just study C itself.

C# is much more like Java than C actually, and unlike C++ isn't a superset of C. And C* isn't really used, it was for specialized massively parallel stuff in the 90s, but nobody uses it anymore, maybe you were thinking of Objective-C (which is basically C with some weird Apple extensions).

>>59146265
The Rust compiler produces horrendously bloated machine code.

>>59148668
That's not the main difference though. Far more significant is that it doesn't have garbage collection or many of Java's safety features.

>>59149272
Non-portable, and not intended to be written by humans.
>>
>>59152169
>>59152224
You're the MVP, thanks man
>>
>>59149172
agreed. I'm a newbie and i picked up python and pygame a couple of months ago. I just started making a few games and some other gui programs which i think is very fun. Learning C just because it's good to learn seems like such a bore to me. It makes more sense to me to learn languages to accommodate your needs, and goals. Not the other way around.
>>
C*... wait what?
https://en.wikipedia.org/wiki/C*
Evolutionary dead end. Hunh.

Ok. C family. Your options are the following:
C
C++
Obj/C - apple meme language
Java / C# (essentially the same language with minor differences)
Python - hipster meme language, not C family but most implementations are C on the inside and you should know it for its various CS and science applications.

Out of that list the most complicated with the least payoff is C++.
Best bet looks like learn Java/C# and also learn C. C shows you how pointers work and how the computer work on the inside.
>>
>>59153970
Basically comes down to what your interests are. If you want to program for a living a lot depends on which ones are popular in the industry (BUT, warning, a lot of those languages aren't actually fun or productive to program in, that's largely driven by non-programmers in management falling for memes). If you're doing it for fun, a lot depends on what you want to do. If you want an easy way to tell the computer what to do, without having to worry about low-level stuff, Python's a good choice for that. C is good if you want to really learn how computers work at barely-above-the-hardware level, or intend to do stuff with device drivers or operating systems. It's a passable general purpose language, but not the best one for that.
>>
>>59154060
To reiterate:
Learn C for pointers and low level understanding
Learn Java or C# for how a real language should work
Learn Python for Python
>>
C# is not a C derivative its a Java clone made by Microsoft

I went C# -> C++ -> C but if I had to do it over I'd do C -> C++
>>
>>59153156
/thread
>>
>>59146241
Learn C, then maybe C++, but C# is just Microsoft's proprietary Java. Learning it just because it has "C" in the name is stupid.
Thread posts: 58
Thread images: 3


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
All trademarks and copyrights on this page are owned by their respective parties.
Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.