online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code    Language
#include <cstring> #include <cassert> #include <iostream> struct A { int var0; int var1; int var2; }; struct B { int var[3]; int other_vars[3]; // [...] }; #define MAP(from, to, var) \ std::memcpy(&to.var##0, &from.var, sizeof(from.var)); int main() { A a; B b; a.var0 = 0; a.var1 = 0; a.var2 = 0; b.var[0] = 1; b.var[1] = 2; b.var[2] = 3; MAP(b, a, var); assert(a.var0 == 1); assert(a.var1 == 2); assert(a.var2 == 3); return 0; }
#include <cstring> #include <cassert> #include <iostream> struct A { int var0; int var1; int var2; }; struct B { int var[3]; int other_vars[3]; // [...] }; #define MAP(from, to, var) \ std::memcpy(&to.var##0, &from.var, sizeof(from.var)); int main() { A a; B b; a.var0 = 0; a.var1 = 0; a.var2 = 0; b.var[0] = 1; b.var[1] = 2; b.var[2] = 3; MAP(b, a, var); assert(a.var0 == 1); assert(a.var1 == 2); assert(a.var2 == 3); return 0; }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue