We are currently in the process of converting the website to the new design. Some pages, like this one, are still broken. We appreciate your patience.
Sean Barrett
This is technically outside the scope of stb_truetype; what the font defines the values to and wha…
»
ratchetfreak
struct State{ int pc; }; #define DrYield(c,v) do{ state->pc = c; return(v); resume_##c:; } while…
»
Allen Webster
My favorite macro trick is for making something that looks like a resumable function call, sort of…
»
PassiveCoder
I like that even more, good thinking.
»
Daniel Rasmussen
Here's a little trick to creating generic functions and types. Multiple include with the same file…
»
ratchetfreak
[/quote] That's not complete without
»
Jason
I wonder if some kind soul could spend some time and tell me where I went wrong with the live code…
»
Horrowind
Not too interesting, but funny:
»
Casey Muratori
Thanks for the kind words! Really glad the series had that effect. It's had the same effect for …
»
Randy Gaul
When I did this I didn't bother replicating the macros, and instead hard-coded with A suffixes. So…
»
Abner Coimbre
The fixing of the bugs has led Jeroen to redesign some key aspects of the data model and further …
»
Bl00drav3n
Regarding the latest episode, where Casey thought about calling pow(x, 2.2) for gamma correction, …
»
PassiveCoder
oh nice catch, thanks mmozeiko
»
Mārtiņš Možeiko
But adding -Wv:18 will generate warning for VS2013 users. VS2015 users need to modify build script…
»
Mārtiņš Možeiko
I dislike macros that create multiple statements. Doing them for definitions or declarations is fi…
»
Mārtiņš Možeiko
That's wrong. It should be GetModuleHandleW, because you are using LPCWSTR argument. That is wide …
»
Mārtiņš Možeiko
In this case it will be even better - compiler will notice that values you are initializing array …
»
Simon Anciaux
Hi, I'm using stb_truetype.h and I've got some questions on how to properly position characters. I…
»
rizoma
While reading the k&r book I found an interesting example (at least for a noob like me) of what I …
»
PassiveCoder
Oh my goodness, how embarrassing! That was it, also I had to define GetModuleHandle as GetModuleHa…
»
Dominik Madarász
You need to wrap the code inside of extern "C" scope: extern "C" { struct HINSTANCE__ { int unuse…
»
PassiveCoder
I rather like this idea, the last time I checked the pre-processor output the windows guff made me…
»
Dominik Madarász
Thanks, I'll look into that one. It's nice to have this topic, always stuff to learn.
»
PassiveCoder
Hi everyone :) I'm a long time follower, first time poster, that just want to say a big to Casey …
»
Jack Mott
I like the SCALL! That could come in handy. I just stumbled on another reflection-ish trick with e…
»
Dominik Madarász
Honestly I'm a big fan of macros, sometimes I even unnecessarily overuse them. I either use it to …
»
Benjamin Pedersen
The Handmade Hero code triggers a lot of warnings (primarily variable shadowing) in VS2015. These …
»
Jack Mott
I learned of a neat macro trick today, maybe old hat to most of you but maybe not "#" is a "string…
»
Jack Mott
I know the author is working on a GCC compatible solution now, I think he had an approach that wou…
»
Mārtiņš Možeiko
This is relevant not only for HTML tags, but also for C++ code. If I want to type in some sentence…
»