- 1
Бесконечный оффтоп имени Гологуба #2
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
Бесконечный оффтоп имени Гологуба #2
#1: https://govnokod.ru/28992 https://govnokod.xyz/_28992
IT Оффтоп #207
#177: https://govnokod.ru/28709 https://govnokod.xyz/_28709
#178: https://govnokod.ru/28716 https://govnokod.xyz/_28716
#179: https://govnokod.ru/28726 https://govnokod.xyz/_28726
#180: https://govnokod.ru/28734 https://govnokod.xyz/_28734
#181: https://govnokod.ru/28739 https://govnokod.xyz/_28739
#182: https://govnokod.ru/28749 https://govnokod.xyz/_28749
#183: https://govnokod.ru/28777 https://govnokod.xyz/_28777
#184: https://govnokod.ru/28790 https://govnokod.xyz/_28790
#185: https://govnokod.ru/28794 https://govnokod.xyz/_28794
#186: https://govnokod.ru/28815 https://govnokod.xyz/_28815
#187: https://govnokod.ru/28833 https://govnokod.xyz/_28833
#188: https://govnokod.ru/28837 https://govnokod.xyz/_28837
#189: https://govnokod.ru/28840 https://govnokod.xyz/_28840
#190: https://govnokod.ru/28875 https://govnokod.xyz/_28875
#191: https://govnokod.ru/28878 https://govnokod.xyz/_28878
#192: https://govnokod.ru/28886 https://govnokod.xyz/_28886
#193: https://govnokod.ru/28911 https://govnokod.xyz/_28911
#194: https://govnokod.ru/28914 https://govnokod.xyz/_28914
#195: https://govnokod.ru/28917 https://govnokod.xyz/_28917
#196: https://govnokod.ru/28925 https://govnokod.xyz/_28925
#197: https://govnokod.ru/28935 https://govnokod.xyz/_28935
#198: https://govnokod.ru/28938 https://govnokod.xyz/_28938
#199: https://govnokod.ru/28942 https://govnokod.xyz/_28942
#200: https://govnokod.ru/28945 https://govnokod.xyz/_28945
#201: https://govnokod.ru/28948 https://govnokod.xyz/_28948
#202: https://govnokod.ru/28951 https://govnokod.xyz/_28951
#203: https://govnokod.ru/28954 https://govnokod.xyz/_28954
#204: https://govnokod.ru/28971 https://govnokod.xyz/_28971
#205: https://govnokod.ru/28986 https://govnokod.xyz/_28986
#206: https://govnokod.ru/28991 https://govnokod.xyz/_28991
Просто оффтоп #40
#10: https://govnokod.ru/27086 https://govnokod.xyz/_27086
#11: https://govnokod.ru/27122 https://govnokod.xyz/_27122
#12: https://govnokod.ru/27153 https://govnokod.xyz/_27153
#13: https://govnokod.ru/27159 https://govnokod.xyz/_27159
#14: https://govnokod.ru/27200 https://govnokod.xyz/_27200
#15: https://govnokod.ru/27237 https://govnokod.xyz/_27237
#16: (vanished) https://govnokod.xyz/_27282
#17: https://govnokod.ru/27319 https://govnokod.xyz/_27319
#18: https://govnokod.ru/27380 https://govnokod.xyz/_27380
#19: (vanished) https://govnokod.xyz/_27500
#20: https://govnokod.ru/27607 https://govnokod.xyz/_27607
#21: https://govnokod.ru/27951 https://govnokod.xyz/_27951
#22: https://govnokod.ru/28076 https://govnokod.xyz/_28076
#23: https://govnokod.ru/28266 https://govnokod.xyz/_28266
#24: https://govnokod.ru/28373 https://govnokod.xyz/_28373
#25: https://govnokod.ru/28474 https://govnokod.xyz/_28474
#26: https://govnokod.ru/28563 https://govnokod.xyz/_28563
#27: https://govnokod.ru/28645 https://govnokod.xyz/_28645
#28: (vanished) https://govnokod.xyz/_28664
#29: https://govnokod.ru/28674 https://govnokod.xyz/_28674
#30: https://govnokod.ru/28680 https://govnokod.xyz/_28680
#31: https://govnokod.ru/28688 https://govnokod.xyz/_28688
#32: https://govnokod.ru/28695 https://govnokod.xyz/_28695
#33: https://govnokod.ru/28702 https://govnokod.xyz/_28702
#34: (vanished) https://govnokod.xyz/_28708
#35: https://govnokod.ru/28715 https://govnokod.xyz/_28715
#36: https://govnokod.ru/28725 https://govnokod.xyz/_28725
#37: https://govnokod.ru/28733 https://govnokod.xyz/_28733
#38: (vanished) https://govnokod.xyz/_28748
#39: https://govnokod.ru/28758 https://govnokod.xyz/_28758
def get_a():
print("Hello goblin")
return get_a
get_a()()()()()()()()()()()()()
Осталось понять зачем
Пиздец-оффтоп #101
#71: https://govnokod.ru/28677 https://govnokod.xyz/_28677
#72: https://govnokod.ru/28685 https://govnokod.xyz/_28685
#73: https://govnokod.ru/28692 https://govnokod.xyz/_28692
#74: https://govnokod.ru/28699 https://govnokod.xyz/_28699
#75: https://govnokod.ru/28705 https://govnokod.xyz/_28705
#76: https://govnokod.ru/28712 https://govnokod.xyz/_28712
#77: https://govnokod.ru/28722 https://govnokod.xyz/_28722
#78: https://govnokod.ru/28730 https://govnokod.xyz/_28730
#79: https://govnokod.ru/28736 https://govnokod.xyz/_28736
#80: https://govnokod.ru/28740 https://govnokod.xyz/_28740
#81: https://govnokod.ru/28750 https://govnokod.xyz/_28750
#82: https://govnokod.ru/28779 https://govnokod.xyz/_28779
#83: https://govnokod.ru/28788 https://govnokod.xyz/_28788
#84: https://govnokod.ru/28795 https://govnokod.xyz/_28795
#85: https://govnokod.ru/28808 https://govnokod.xyz/_28808
#86: (vanished) https://govnokod.xyz/_28814
#87: https://govnokod.ru/28817 https://govnokod.xyz/_28817
#88: https://govnokod.ru/28836 https://govnokod.xyz/_28836
#89: https://govnokod.ru/28843 https://govnokod.xyz/_28843
#90: https://govnokod.ru/28874 https://govnokod.xyz/_28874
#91: https://govnokod.ru/28880 https://govnokod.xyz/_28880
#92: https://govnokod.ru/28884 https://govnokod.xyz/_28884
#93: https://govnokod.ru/28889 https://govnokod.xyz/_28889
#94: https://govnokod.ru/28895 https://govnokod.xyz/_28895
#95: https://govnokod.ru/28904 https://govnokod.xyz/_28904
#96: https://govnokod.ru/28912 https://govnokod.xyz/_28912
#97: https://govnokod.ru/28918 https://govnokod.xyz/_28918
#98: https://govnokod.ru/28932 https://govnokod.xyz/_28932
#99: https://govnokod.ru/28936 https://govnokod.xyz/_28936
#100: https://govnokod.ru/28940 https://govnokod.xyz/_28940
Питушня #41
#11: https://govnokod.ru/27058 https://govnokod.xyz/_27058
#12: https://govnokod.ru/27182 https://govnokod.xyz/_27182
#13: https://govnokod.ru/27260 https://govnokod.xyz/_27260
#14: https://govnokod.ru/27343 https://govnokod.xyz/_27343
#15: https://govnokod.ru/27353 https://govnokod.xyz/_27353
#16: https://govnokod.ru/27384 https://govnokod.xyz/_27384
#17: https://govnokod.ru/27482 https://govnokod.xyz/_27482
#18: https://govnokod.ru/27514 https://govnokod.xyz/_27514
#19: https://govnokod.ru/27620 https://govnokod.xyz/_27620
#20: https://govnokod.ru/27816 https://govnokod.xyz/_27816
#21: https://govnokod.ru/27956 https://govnokod.xyz/_27956
#22: https://govnokod.ru/28143 https://govnokod.xyz/_28143
#23: https://govnokod.ru/28315 https://govnokod.xyz/_28315
#24: (vanished) https://govnokod.xyz/_28362
#25: (vanished) https://govnokod.xyz/_28463
#26: https://govnokod.ru/28481 https://govnokod.xyz/_28481
#27: https://govnokod.ru/28537 https://govnokod.xyz/_28537
#28: https://govnokod.ru/28619 https://govnokod.xyz/_28619
#29: (vanished) https://govnokod.xyz/_28663
#30: https://govnokod.ru/28673 https://govnokod.xyz/_28673
#31: https://govnokod.ru/28679 https://govnokod.xyz/_28679
#32: https://govnokod.ru/28687 https://govnokod.xyz/_28687
#33: https://govnokod.ru/28694 https://govnokod.xyz/_28694
#34: https://govnokod.ru/28701 https://govnokod.xyz/_28701
#35: https://govnokod.ru/28707 https://govnokod.xyz/_28707
#36: https://govnokod.ru/28714 https://govnokod.xyz/_28714
#37: https://govnokod.ru/28724 https://govnokod.xyz/_28724
#38: https://govnokod.ru/28732 https://govnokod.xyz/_28732
#39: https://govnokod.ru/28839 https://govnokod.xyz/_28839
#40: https://govnokod.ru/28909 https://govnokod.xyz/_28909
var fn={
'+':{priority:0,exec:function(a,b){return a+b}}
,'-':{priority:0,exec:function(a,b){return a-b}}
,'*':{priority:1,exec:function(a,b){return a*b}}
,'/':{priority:1,exec:function(a,b){return a/b}}
,'&':{priority:1,exec:function(a,b){return a&b}}
,'|':{priority:1,exec:function(a,b){return a|b}}
,'»':{priority:2,exec:function(a,b){return a>>b}}
,'«':{priority:2,exec:function(a,b){return a<<b}}
}
function exec(str){
var machine=putin();
var out=[];
console.log("Executing: "+str);
(str.trim()+" END").split(/\s+/).forEach(parser(function (e){
if (!e) throw "empty:"+e;
out.push(e);
machine.send(e);
}));
console.log(out.slice())
return machine.top();
}
function putin(){
// раз "единственно полезная структура данных"
var stack = [];
return {
send:function(e){
if (fn[e]){
b = stack.pop();
a = stack.pop();
r=fn[e].exec(a, b);
}else{
r=+e;
}
console.log(e,r);
stack.push(r);
},top:function(){return stack[0];}
}
}
function parser(output){
// джва "единственно полезная структура данных"
var ops=[];
var op2;
return function(e){
if (/[0-9]+/.test(e)) {
output(e);
}else if (null!=fn[e]){
op2=ops.slice(-1)[0];
while (fn[op2] && (fn[e].priority <= fn[op2].priority) ){
output(op2);
ops.pop();
op2 = ops.slice(-1)[0];
}
ops.push(e);
}else if (e == "(") {
ops.push(e);
}else if (e == ")") {
while (ops.slice(-1)[0] != "("){
output(ops.pop())
}
ops.pop();
}else if ("END" == e){
var x;
while (x=ops.pop(),x) {
output(x);
}
}else{
throw 'invalid pituh:'+e;
}
}
}
[
[-1187,"1 + 22 - 13 * ( 44 + 51 ) + 150 / 3 « 1"]
,[13,"1 + 3 * 4"]
,[16,"( 1 + 3 ) * 4"]
,[17," 1 + 2 * 3 - 4 * 5 + 10 * ( 12 - 9 )"]
]
.forEach(function (a){
if (a[0]!=exec(a[1])) throw ("Shit:"+ a[0]+" != "+ a[1])
});
После того как я заявил что массив — "единственно полезная структура данных", и можно парсить выражения без деревьев.
Гумно начало брать на «слабо».
Поточный парсер выражений, который принимает пайпом поток токенов и «на лету» пайпает свой выхлоп в интерпретатор.
Таким образом по мере прохождения потока он потихоньку исполняется и упрощается.
Политота #34
#4: (vanished) https://govnokod.xyz/_24822
#5: https://govnokod.ru/24868 https://govnokod.xyz/_24868
#6: (vanished) https://govnokod.xyz/_26648
#7: https://govnokod.ru/26673 https://govnokod.xyz/_26673
#8: https://govnokod.ru/27052 https://govnokod.xyz/_27052
#9: (vanished) https://govnokod.xyz/_27852
#10: https://govnokod.ru/28060 https://govnokod.xyz/_28060
#11: https://govnokod.ru/28091 https://govnokod.xyz/_28091
#12: https://govnokod.ru/28103 https://govnokod.xyz/_28103
#13: https://govnokod.ru/28144 https://govnokod.xyz/_28144
#14: https://govnokod.ru/28270 https://govnokod.xyz/_28270
#15: https://govnokod.ru/28341 https://govnokod.xyz/_28341
#16: https://govnokod.ru/28379 https://govnokod.xyz/_28379
#17: https://govnokod.ru/28394 https://govnokod.xyz/_28394
#18: https://govnokod.ru/28440 https://govnokod.xyz/_28440
#19: https://govnokod.ru/28572 https://govnokod.xyz/_28572
#20: https://govnokod.ru/28656 https://govnokod.xyz/_28656
#21: (vanished) https://govnokod.xyz/_28666
#22: https://govnokod.ru/28676 https://govnokod.xyz/_28676
#23: https://govnokod.ru/28684 https://govnokod.xyz/_28684
#24: https://govnokod.ru/28691 https://govnokod.xyz/_28691
#25: https://govnokod.ru/28698 https://govnokod.xyz/_28698
#26: https://govnokod.ru/28704 https://govnokod.xyz/_28704
#27: https://govnokod.ru/28711 https://govnokod.xyz/_28711
#28: https://govnokod.ru/28721 https://govnokod.xyz/_28721
#29: https://govnokod.ru/28728 https://govnokod.xyz/_28728
#30: (vanished) https://govnokod.xyz/_28747
#31: https://govnokod.ru/28757 https://govnokod.xyz/_28757
#32: https://govnokod.ru/28770 https://govnokod.xyz/_28770
#33: https://govnokod.ru/28835 https://govnokod.xyz/_28835
Пиздец-оффтоп #105
#75: https://govnokod.ru/28705 https://govnokod.xyz/_28705
#76: https://govnokod.ru/28712 https://govnokod.xyz/_28712
#77: https://govnokod.ru/28722 https://govnokod.xyz/_28722
#78: https://govnokod.ru/28730 https://govnokod.xyz/_28730
#79: https://govnokod.ru/28736 https://govnokod.xyz/_28736
#80: https://govnokod.ru/28740 https://govnokod.xyz/_28740
#81: https://govnokod.ru/28750 https://govnokod.xyz/_28750
#82: https://govnokod.ru/28779 https://govnokod.xyz/_28779
#83: https://govnokod.ru/28788 https://govnokod.xyz/_28788
#84: https://govnokod.ru/28795 https://govnokod.xyz/_28795
#85: https://govnokod.ru/28808 https://govnokod.xyz/_28808
#86: (vanished) https://govnokod.xyz/_28814
#87: https://govnokod.ru/28817 https://govnokod.xyz/_28817
#88: https://govnokod.ru/28836 https://govnokod.xyz/_28836
#89: https://govnokod.ru/28843 https://govnokod.xyz/_28843
#90: https://govnokod.ru/28874 https://govnokod.xyz/_28874
#91: https://govnokod.ru/28880 https://govnokod.xyz/_28880
#92: https://govnokod.ru/28884 https://govnokod.xyz/_28884
#93: https://govnokod.ru/28889 https://govnokod.xyz/_28889
#94: https://govnokod.ru/28895 https://govnokod.xyz/_28895
#95: https://govnokod.ru/28904 https://govnokod.xyz/_28904
#96: https://govnokod.ru/28912 https://govnokod.xyz/_28912
#97: https://govnokod.ru/28918 https://govnokod.xyz/_28918
#98: https://govnokod.ru/28932 https://govnokod.xyz/_28932
#99: https://govnokod.ru/28936 https://govnokod.xyz/_28936
#100: https://govnokod.ru/28940 https://govnokod.xyz/_28940
#101: https://govnokod.ru/28949 https://govnokod.xyz/_28949
#102: https://govnokod.ru/28978 https://govnokod.xyz/_28978
#103: https://govnokod.ru/28982 https://govnokod.xyz/_28982
#104: https://govnokod.ru/28989 https://govnokod.xyz/_28989
var i int
for i = range n {}
fmt.Println(i+1)
кусочек кода для считание len(n)
CBufferHandlerOfPrmtv::CBufferHandlerOfPrmtv
{
_ffInt = 0;
_ffInt = ~_ffInt;
_ffChar = 0;
_ffChar = ~_ffChar;
}
bool CBufferHandlerOfPrmtv::IsFF(unsigned int toCheck, unsigned int toCheckSz)
{
if(toCheckSz > sizeof(unsigned int)){
assert(!testPrmtvs);
return true;
}
if(!toCheckSz){
assert(!testPrmtvs);
return true;
}
return (memcmp(&toCheck, &_ffInt, toCheckSz) == 0);
}
разбирал щас говешки и вот такое увидел...
НАХЕРА ?!?!!?
PS: подскажу. метода проверяет число на 0xff.
Ну я думаю все уже в курсе этой хуйни с обыском в Nginx
Обыски, Сысоев и Коновалов были задержаны и прочая такая хуйня, традиционная для жителей РФ
https://habr.com/ru/company/itsumma/blog/479942/
Потом всякие набросы на всё том же хабре в духе "Я-МЫ Nginx" и так далее.
Особенно забавно например такое:
https://pbs.twimg.com/media/ELqxwTcXkAA04zq?format=jpg&name=large
Социальная сеть, отжатая в результате налета на создателя силовиков большой IT-корпорацией во главе олигарха, выступает против налета силовиков на создателя веб-сервера, предпринятого в попытке отжать компанию большой IT-корпорацией во главе олигарха.
Хрюкни #40
._ __,
|\,../'\
,'. . `.
.-- '`.
( `' , ;
,`--' _, ,'\
,`.____ `.
/ `, |
' \, '
| / /`,
`, . ,` ./ |
' `. ,' |;,' ,@
______| | _________,_____jv______
`. `. ,'
,'_,','_,
`' `'
#10: https://govnokod.ru/27472 https://govnokod.xyz/_27472
#11: https://govnokod.ru/27517 https://govnokod.xyz/_27517
#12: https://govnokod.ru/27636 https://govnokod.xyz/_27636
#13: (vanished) https://govnokod.xyz/_27711
#14: https://govnokod.ru/27713 https://govnokod.xyz/_27713
#15: https://govnokod.ru/27721 https://govnokod.xyz/_27721
#16: https://govnokod.ru/27722 https://govnokod.xyz/_27722
#17: (vanished) https://govnokod.xyz/_27723
#18: https://govnokod.ru/27724 https://govnokod.xyz/_27724
#19: https://govnokod.ru/27726 https://govnokod.xyz/_27726
#20: https://govnokod.ru/27727 https://govnokod.xyz/_27727
#21: https://govnokod.ru/27870 https://govnokod.xyz/_27870
#22: https://govnokod.ru/28067 https://govnokod.xyz/_28067
#23: https://govnokod.ru/28277 https://govnokod.xyz/_28277
#24: https://govnokod.ru/28471 https://govnokod.xyz/_28471
#25: https://govnokod.ru/28659 https://govnokod.xyz/_28659
#26: (vanished) https://govnokod.xyz/_28661
#27: (vanished) https://govnokod.xyz/_28668
#28: https://govnokod.ru/28678 https://govnokod.xyz/_28678
#29: https://govnokod.ru/28686 https://govnokod.xyz/_28686
#30: https://govnokod.ru/28693 https://govnokod.xyz/_28693
#31: https://govnokod.ru/28700 https://govnokod.xyz/_28700
#32: https://govnokod.ru/28706 https://govnokod.xyz/_28706
#33: https://govnokod.ru/28713 https://govnokod.xyz/_28713
#34: https://govnokod.ru/28723 https://govnokod.xyz/_28723
#35: https://govnokod.ru/28731 https://govnokod.xyz/_28731
#36: https://govnokod.ru/28737 https://govnokod.xyz/_28737
#37: https://govnokod.ru/28741 https://govnokod.xyz/_28741
#38: https://govnokod.ru/28751 https://govnokod.xyz/_28751
#39: https://govnokod.ru/28854 https://govnokod.xyz/_28854
function banByIP($ip) {
$result = mysql_query("SELECT * FROM `" . $GLOBALS['mysql_bans_table'] . "` WHERE `ip` = '" . mysql_real_escape_string($ip) . "' LIMIT 1");
while ($ban = mysql_fetch_assoc($result)) {
return $ban;
}
}
Из движка TinyIB.
for ($i = 0; $i <= strlen($_POST[login]); $i++) {
$b = substr($_POST[login], $i, 1);
if(($b==q) || ($b==w) || ($b==e) || ($b==r) || ($b==t) || ($b==y) || ($b==u) || ($b==i) || ($b==o)
|| ($b==p) || ($b==a) || ($b==s) || ($b==d) || ($b==f) || ($b==g) || ($b==h) || ($b==j) || ($b==k) || ($b==l) || ($b==z)
|| ($b==x) || ($b==c) || ($b==v) || ($b==b) || ($b==n) || ($b==m) || ($b==" ") || ($b==й) || ($b==ц) || ($b==у) || ($b==к)
|| ($b==е) || ($b==н) || ($b==г) || ($b==ш) || ($b==щ) || ($b==з) || ($b==х) || ($b==ъ) || ($b==ф) || ($b==ы) || ($b==в)
|| ($b==а) || ($b==п) || ($b==р) || ($b==о) || ($b==л) || ($b==д) || ($b==ж) || ($b==э) || ($b==я) || ($b==ч) || ($b==с)
|| ($b==м) || ($b==и) || ($b==т) || ($b==ь) || ($b==б) || ($b==ю))
{ echo $b; }
}
Чувак на php.ru попросил помочь и выложил свои наработки. После чего - эпическая цитата
"А админам скажу: у меня есть опыт PHP и не маленький, зачем меня переводить в PHP для новичков:( "
IT Оффтоп #203
#173: https://govnokod.ru/28681 https://govnokod.xyz/_28681
#174: https://govnokod.ru/28689 https://govnokod.xyz/_28689
#175: https://govnokod.ru/28696 https://govnokod.xyz/_28696
#176: https://govnokod.ru/28703 https://govnokod.xyz/_28703
#177: https://govnokod.ru/28709 https://govnokod.xyz/_28709
#178: https://govnokod.ru/28716 https://govnokod.xyz/_28716
#179: https://govnokod.ru/28726 https://govnokod.xyz/_28726
#180: https://govnokod.ru/28734 https://govnokod.xyz/_28734
#181: https://govnokod.ru/28739 https://govnokod.xyz/_28739
#182: https://govnokod.ru/28749 https://govnokod.xyz/_28749
#183: https://govnokod.ru/28777 https://govnokod.xyz/_28777
#184: https://govnokod.ru/28790 https://govnokod.xyz/_28790
#185: https://govnokod.ru/28794 https://govnokod.xyz/_28794
#186: https://govnokod.ru/28815 https://govnokod.xyz/_28815
#187: https://govnokod.ru/28833 https://govnokod.xyz/_28833
#188: https://govnokod.ru/28837 https://govnokod.xyz/_28837
#189: https://govnokod.ru/28840 https://govnokod.xyz/_28840
#190: https://govnokod.ru/28875 https://govnokod.xyz/_28875
#191: https://govnokod.ru/28878 https://govnokod.xyz/_28878
#192: https://govnokod.ru/28886 https://govnokod.xyz/_28886
#193: https://govnokod.ru/28911 https://govnokod.xyz/_28911
#194: https://govnokod.ru/28914 https://govnokod.xyz/_28914
#195: https://govnokod.ru/28917 https://govnokod.xyz/_28917
#196: https://govnokod.ru/28925 https://govnokod.xyz/_28925
#197: https://govnokod.ru/28935 https://govnokod.xyz/_28935
#198: https://govnokod.ru/28938 https://govnokod.xyz/_28938
#199: https://govnokod.ru/28942 https://govnokod.xyz/_28942
#200: https://govnokod.ru/28945 https://govnokod.xyz/_28945
#201: https://govnokod.ru/28948 https://govnokod.xyz/_28948
#202: https://govnokod.ru/28951 https://govnokod.xyz/_28951
а давайте сравним размеры скомпилированного EXE под Винду и Убунту и посмотрим сколько лет надо ждать когда это Г будет собранно в ЕХЕ файл
windows: (+pdb)
tsc.exe 159M
tsc.pdb 872M
ubuntu: (+debug info)
tsc 1290M (из них debug info 1153M)
а вы знаете сколько лет мне надо ждать что бы скомпилять такие файлы? особенно на убунте?
И какой "ур-д" предлагал мне использовать убунту а не винду :)?
сабж в теме
#include <iostream>
union is_odd {
long long int number;
bool yes : sizeof(long long int);
};
int main() {
std::boolalpha(std::cout);
for (long long int i = -10; i < 10; ++i) {
std::cout << i << " is odd? "
<< is_odd{ .number = i }.yes
<< "\n";
}
}
DEMO:
https://godbolt.org/z/5exc84eYK
int iseven(long long int number)
{
struct Num {
unsigned int x:1;
unsigned int y:31;
unsigned int z:32;
} num = (*(struct Num*)(&number));
return num.x; //Если результат 1, то нечётное.
}
Функция определения чётности числа посредством возврата младшего бита.
guest6 только что #