Leave these fields empty (spam trap):
Name
You can leave this blank to post anonymously, or you can create a Tripcode by using the format Name#Password
Comment
[i]Italic Text[/i]
[b]Bold Text[/b]
[spoiler]Spoiler Text[/spoiler]
>Highlight/Quote Text
[pre]Preformatted & Monospace Text[/pre]
[super]Superset Text[/super]
[sub]Subset Text[/sub]
1. Numbered lists become ordered lists
* Bulleted lists become unordered lists
File

Sandwich


What to code in C?

Reply
- Sat, 18 Jun 2016 18:15:55 EST NSh3STBF No.35753
File: 1466288155362.jpg -(84531B / 82.55KB, 800x1070) Thumbnail displayed, click image for full size. What to code in C?
Hey guys,

I want to learn C but have no idea what project would be fun enough to keep my attraction gripped.

I never did C before, only some C++. I've done some inheritance, lists, binary trees, properly handling pointers and such. Never did anything fancy with that, but I still well remember those concepts.

It's a pretty basic request, I know. My imagination is quite simply very dry, motivation low. Oh and also,

Another Google Question I'd Rather Read Your Opinion About :
~ How *truly* different would you say C is from C++?

Thanks in advance, friends.
>>
Jarvis Figglehood - Sat, 18 Jun 2016 19:49:51 EST BwNvELbz No.35754 Reply
>How *truly* different would you say C is from C++?

Maybe start by reading a C book.
>>
Simon Brengertere - Sun, 19 Jun 2016 08:36:36 EST 9QSfnS0r No.35755 Reply
These days the most fun you can have writing C is using a microcontroller board with an AVR or PIC.

You can blink LEDs, create sound, read potentiometers. If you don't know what to do a (midi) synthesizer is always something that's fairly easy to learn but hard to master.

C vs C++ is that you don't use any OOP, just procedural code.
You are using structs instead of classes and pass pointers to those structs to your procedures.
You also have to allocate memory manually which makes it easy to have bugs you aren't used to.
You are also missing pretty much any convenience functionality like foreach, etc...

If you want to write software for the PC it makes sense to use C with other languages like python and build libraries for your algorithms.
>>
Charles Pockworth - Sat, 25 Jun 2016 21:01:36 EST mfkLzG/S No.35766 Reply
Zed Shaw's Learn C the Hard Way
http://c.learncodethehardway.org/book/

Also this book: http://csapp.cs.cmu.edu/ which teaches you ground up, binary/floating point/assembly and everything else you'll need to know all done in C and assembly. Expensive book i used libgen.io to pirate the most recent version (it's x64, old versions are 32bit).

There's also the book The Unix Programming Environment which has a lot of C programs in it to try out.

As for what to do in C, if you're not maintaining some existing C project like an embedded OS, Linux/BSD kernel or similar then don't write anything in C it's too dangerous. Use Go instead of that kind of systems/network stuff as it's memory safe. If you don't care at all about memory safety then write whatever you want, like embedded systems but make sure they're offline systems.
>>
Lillian Choblingdock - Wed, 29 Jun 2016 01:59:10 EST vIbiteGg No.35782 Reply
I'm coming back to C and C++ from a few years off in Scala, java, C#, and python land and holy fuck do I hate C++ now. C at least keeps it simple and doesn't fuck with you. But C++ has so many unique keywords and implicit definitions that keep getting bolted on that the language itself is a maze instead of the standard libraries.

Anyways I can power through that but the build tools are really what's holding me back. Are there any good references for building libraries and how linking works for C?
>>
Nicholas Pinkinfoot - Fri, 01 Jul 2016 02:36:56 EST sGFR0zid No.35801 Reply
>>35766

I read Zed Shaw's book as my 2nd C book and thought it was the most tedious, least helpful CS book I'd ever read. He's a sloppy writer, with sloppy editing, and awful at explaining things. KN King's C book is the way to go for *learning* C IMO. Zed Shaw's book is only useful to someone who already knows C decently as a refresher, at least as far as I could tell.

Report Post
Reason
Note
Please be descriptive with report notes,
this helps staff resolve issues quicker.