Hacker News new | past | comments | ask | show | jobs | submit login

> 2. Realize the program does not work because the types have different sizes now

Such an enormous amount of time in C/C++ programming is devoted to accounting for the size of an int, long, wchar_t, and long long being unreliable when porting.

This is why D has int fixed at 32 bits, long fixed at 64 bits. It's amazing how the problems just melt away.

Now, just remember to use size_t for everything used as an index, and you're good to go. (ptrdiff_t is almost never needed.)




Isn’t it similar in C with using uint16_t, uint32_t, etc?

IMO it helps to write programs from the ground up that you know will need to be cross compiled.


Yes, you could use int32_t. But who wants to type that? People default to convenience, and that's int.

Besides, the C Standard Library doesn't even use stdint.h. Now you've got unknown implicit integer conversions going on. It's just not a solution.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: