[video member=cmuratori stream_platform=twitch stream_username=handmade_hero project=intro-to-c title="Intro to C on Windows - Day 4 Q&A" vod_platform=youtube id=Bf3LiCd1O9c annotator=jacebennett annotator=effect0r] [0:00:20][Q&A] [0:00:22][@Braincruzer][Do a segmentation error!] [0:00:38][@chronaldragon][Will you explain how negative numbers are encoded?] [0:01:06][@chronaldragon][What would be the difference if you used C++ classes instead of structs?] [0:02:16][Does the order of variable declaration affect their memory packing?] [0:02:56][Show a segmentation error] [0:03:06][Why are their 18 columns in the memory window?] [0:04:06][Why use char and short if they get padded to 32 bits like ints anyway?] [0:09:03][In case you weren't aware, the twitch stream doesn't stop when you kill the webcam video] [0:09:21][What is the arrow operator?] [0:09:46][@idiocracy][Why didn't big endianness become the thing instead of little endianness? Conversely, if Sony is in a world where little endianness is dominant in x86, why would they make things harder for everyone by choosing big endianness for the PS3?] [0:17:50][Aren't the sizes of short, int, and long determined by the CPU and memory architecture rather than always being 16-bits 32-bits, etc?] [0:18:25][After the pragma on the struct you could rearrange declarations so it's 11 bytes but on 3 of the 4 32-bit boundaries...] [0:18:49][How do you feel about functional programming?] [0:18:56][Is there a difference between combining multiple statements into a single line in the resulting code or is it just to save on typing?] [0:19:40][Is there a particular reason you cast the projectile pointer to a char pointer instead of an int?] [0:21:03][I don't know about the packing. I'm pretty sure it just puts the variable at an address in memory that is a multiple of that variables size] [0:21:33][Will Q&A continue when you start the main series?] [0:21:38][I'm new here. What is the goal of your stream and are you streaming stuff like this again?] [0:21:56][If pointers are always point to one byte, why are there ever any types besides unsigned char?] [0:22:41][Couldn't it \[the platform decision\] also be to make emulation harder?] [0:22:50][Yesterday you said why you plan to use visual studio as only a debugger, but you wouldn't be using the editor. What will you be using to edit code/compile if not using visual studio?] [0:23:46][What are these dword, word, and qword things in the win32api? I know they're typedefs so I'm asking why they exist.] [0:24:50][Not really directly related to the content of the stream, but do you think c++ has beaten c as the standard for game programming?] [0:25:36][How do you psychologically deal with not having visceral results for something you've been programming for a long time?] [0:26:16][You should really put a link to the handmade hero website in the twitch pages description.] [0:26:41][What do you think about rust for game development? Have you tried it out yet?] [0:27:02][Not sure you covered pointer dereference, but that would solve some arrow operator questions people were asking] [0:28:00][@quantumplation][In the past video you seem to dislike microsoft substantially. What do you think of many of their new open-source free initiatives announced recently?] [0:31:20][Thank you and closing thoughts] [/video]