Přijďte si zasprintovat na Djangu, jiném Python open-source projektu, nebo jen potkat ostatní vývojáře!
… více »Letos v říjnu se v Praze uskuteční hned několik konferencí. Odehraje se zde nově vzniklá konference LinuxDays. K ní se přidá čtvrtý ročník openSUSE Conference, dvanáctý ročník SUSE Labs conference a aby to nebylo málo, přidá se i první ročník Gentoo miniconf. A to vše ve stejné dny a na stejném místě.
… více »
Hmm, ten patche vypadá hodně usměvně. Bohužel, něčemu podobnému se v C asi zabránit nedá, co?
geteuid je pointer na funkci, zatímco geteuid() je volání funkce, což je céčku jedno. Nebo existuje nějaký parser, který by na podobné konstrukce upozornil?
).
#define ..., vid...
-Wall, dokonce mám neblahé tušení, že snad i přímo norma specifikuje, že to musí být přípustné (ale ruku do ohně bych za to nedal, musel bych se podívat). Je to celkem logické, idiomy typu 'if (!p)' se používají skoro všude. Navíc se i NULL často #definuje jako '0' místo '((void*) 0)'.
#ifdef __cplusplus #define NULL 0 #else #define NULL ((void*) 0) #elif
while (curr = next_foo(bar)) baz(curr); while ((curr = next_foo(bar)) != NULL) baz(curr);Stejně nechápu proč vlastně C trvá na závorkách kolem expr v příkazech
if, while, for, switch, protože jsou obvykle redundantní a pouze snižují čitelnost. Zlatej python.
. Čímž nechci C shazovat, protože je to můj oblíbený jazyk, jenom je určen na něco trochu jiného.
= pro přiřazení a == pro porovnání: v programech se statisticky výrazně častěji přiřazuje než porovnává na rovnost, proto je pro přiřazení zvolen kratší operátor; na rozdíl od Pascalu, který byl stvořen jako jazyk pro výuku, jehož návrh zohledňuje spíše teoretická hlediska než praktická. Jinak by totiž Wirtha nikdy nemohlo napadnout něco tak šíleného, jako dát operátorům and a or vyšší prioritu než porovnávání (a takových příkladů by se v Pascalu našlo víc).
Ale lze používat pomocné programy (jako např. splint), které leccos najdou.
).
/* First the options that are only allowed for root */ if (getuid() == 0 || geteuid() != 0)Jo a chybějící function call by mělo gcc v tomto případě hlásit, protože geteuid bez závorek je reference na externí symbol, tudíž je blbost jej castovat na bool.
X nemusí mít suid bit, pokud ho nepotřebujete spouštět interaktivně pomocí startx. Což dnes naprostá většina uživatelů nepotřebuje.
.
Tiskni
Sdílej: