Gollum@feddit.de to Programmer Humor@programming.dev · 10 months agoMe after I got firedfeddit.deimagemessage-square68fedilinkarrow-up1879arrow-down122
arrow-up1857arrow-down1imageMe after I got firedfeddit.deGollum@feddit.de to Programmer Humor@programming.dev · 10 months agomessage-square68fedilink
minus-squaretunawasherepoo@iusearchlinux.fyilinkfedilinkarrow-up29·10 months ago__LINE__ returns the line of code its on, and % 10 means “remainder 10.” Examples: 1 % 10 == 1 ... 8 % 10 == 8 9 % 10 == 9 10 % 10 == 0 <-- loops back to 0 11 % 10 == 1 12 % 10 == 2 ... 19 % 10 == 9 20 % 10 == 0 21 % 10 == 1 In code, 0 means false and 1 (and 2, 3, 4, …) means true. So, if on line 10, you say: int dont_delete_database = true; then it will expand to: int dont_delete_database = ( 10 % 10 ); // 10 % 10 == 0 which means false // database dies... if you add a line before it, so that the code moves to line 11, then suddenly it works: // THIS COMMENT PREVENTS DATABASE FROM DYING int dont_delete_database = ( 11 % 10 ); // 11 % 10 == 1, which means true
__LINE__
returns the line of code its on, and% 10
means “remainder 10.” Examples:1 % 10 == 1 ... 8 % 10 == 8 9 % 10 == 9 10 % 10 == 0 <-- loops back to 0 11 % 10 == 1 12 % 10 == 2 ... 19 % 10 == 9 20 % 10 == 0 21 % 10 == 1
In code,
0
meansfalse
and1
(and2
,3
,4
, …) meanstrue
.So, if on line 10, you say:
int dont_delete_database = true;
then it will expand to:
int dont_delete_database = ( 10 % 10 ); // 10 % 10 == 0 which means false // database dies...
if you add a line before it, so that the code moves to line 11, then suddenly it works:
// THIS COMMENT PREVENTS DATABASE FROM DYING int dont_delete_database = ( 11 % 10 ); // 11 % 10 == 1, which means true