What is it about C that makes everyone say it's the best language?
>>61146999
nice dubs
>>61146999
#include <trips.checked>
>>61147126
those are quads nigga
>:^)
>>61146999
Nostalgia
>>61146999
it's simple and small.
also>>61147242
It's simple, takes less than a month to learn most of it, the syntax is elegant, operators are not overloaded nonsensically, translation to and from assembly is often simple, perfs are rarely matched by higher level languages, no bullshit abstraction to the point that you never know whether you are dealing with pointers unlike Python, it compiles fast, it fully supports modular programming, its preprocessor system is primitive enough to keep Rustfags away yet powerful enough to do everything it should do, and all good libraries are designed for it (even Vulkan).
>>61146999
It caters simpletons.
>>61147424
>It's simple, takes less than a month to learn most of it
>>61147177
but those are dubs fo sure!
>>61147527
I thought it was supposed to be confusing?
>>61147578
No, that's C++ you're thinking of.
I don't know anyone who says it's the "best" language. It is very fast though and allows for optimizations not possible in some other languages.
>>61147640
>I don't know anyone who says it's the "best" language.
lurk moar faggot
>>61147764
I don't consider users of /g/ to be people.
>>61147640
>It is very fast though and allows for optimizations not possible in some other languages.
>>61147797
you're literally a nigger if you don't think this to be true.
>>61147816
Ok, kid, tell me about optimizations that aren't possible in other languages.
Can you do gui with C? Or do you have to do the work in C, then a seperate GUI with C++/Qt or something
>>61147821
I'm talking the C family of course.
But just consider a "string". In other languages you have to provide the entire string, often as a copy. With c you can pass a start and end pointer.
Similar with objects (structs), you can provide a pointer to it rather than copying the entire object like in python when you run fun(nigger)
You can also do things like define a variable but not instantiate it until it is necessary. C is fast because you have low level control without any handholding
Fast, simple, close to the metal.
>>61147874
And no niggers
Good for lower level programming interfacing with hardware it's pretty much 1 step above assembly language for efficiency. Sucks for GUIs and higher level stuff.
>>61147177
>>61147555
kill yourselves
>>61147826
Any turing complete language can do the same thing any other turing complete language can do, but it might be more annoying.
>>61147860
>In other languages you have to provide the entire string, often as a copy.
>With c you can pass a start and end pointer.
>Similar with objects (structs), you can provide a pointer to it rather than copying the entire object like in python when you run fun(nigger)
comedy gold
>>61147919
Well yes of course. I mean, doable simply by me the programmer.
I realized though GDK+ is there for C based GUI's, I do not know if its limited vs C++/Qt since I never have made a gui
>>61147919
Irrelevant because we're not working on Turing machines.
Hint: I/O
>>61147941
Here's how to make Ye Olde Window with Win32.
http://www.winprog.org/tutorial/simple_window.html
It typically involves asking the operating system to do stuff. The operating system abstracts away every input/output device with drivers. There's a library for drawing windows, a library for drawing fonts, a library for drawing shapes, a library for listening to events, keyboard presses, and mouse clicks, a library for the compositor to determine which window is in front and which things are visible, it's libraries all the way down.
Normies use widget toolkits.
https://en.wikipedia.org/wiki/List_of_widget_toolkits
>>61146999
Started learning C after mostly using Python and there's something fun about messing around with lower level programming.
>>61148166
Only issue is that wont be cross platform and it'll be harder to make it look good
>>61147924
Comedy gold that you question him, yes.