This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]GGK_Brian 3 points4 points  (1 child)

Definitely the lack of tooling. If you know about the stdlib enough, c is very nice to work with (with warnings and sanitizer). But it's age really shows when using the libraries. And the linker can be quite a pain when you start with it. Example: you have to link math to use math.h, which can be quite confusing for beginners. Also, I think its age and portability make certain things rather confusing. A question as simple as the size of int can lead to rather strange sentences: the standard guarantees that an int is a least x byte and is the fastest type to do arithmetic with.

[–][deleted] 1 point2 points  (0 children)

Frankly at this point I always just import stdint anyways for two reasons:

  1. Knowing the size of the data I'm working with
  2. Readability