Jste zde

C++

warning: comparison between signed and unsigned integer expressions

Pokud ve svém C či C++ programu porovnáváte znaménková a bezznaménková čísla, používáte překladač GCC a máte zaplá varování, tak jste se již určitě setkali s varováním warning: comparison between signed and unsigned integer expressions. Toto varování bývá velmi často přehlíženo, a to mnohdy z toho důvodu, že dotyčnému není jasné, kde by mohl vzniknout problém. Cílem tohoto krátkého příspěvku je na tento problém poukázat.

Zajímavé úlohy pro programátory v C a C++ #12

Tentokrát budeme doplňovat program, který nevypadá jako Céčkový ani C++ový, tak, že bude přeložitelný překladačem C či C++ a bude dělat to samé, co původní program.

Méně známé skutečnosti o C a C++: Ukazatel není číslo

Pravidelně se setkávám s mylným názorem, že "ukazatel je číslo". V tomto příspěvku bych chtěl (1) poukázat na to, že tvrdit, že "ukazatel je číslo", je to stejné, jako tvrdit, že "Bozetechova 2, 612 66 Brno, Czech Republic" je číslo a (2) že ukazatele a čísla nelze jen tak mezi sebou převádět.

Zajímavé úlohy pro programátory v C a C++ #11

Tentokrát bude úloha/hádanka buď značně triviální, nebo obtížná, a to v závislosti na tom, zda prokouknete trik, který bude třeba využít ;).

Méně známé skutečnosti o C++: Rozdíl mezi funkcí a statickou metodou třídy

Občas se lze setkat s názorem, že statická metoda třídy je to stejné, co obyčejná funkce. V tomto krátkém příspěvku vás přesvědčím, proč tomu tak není ;).

Zajímavosti z C++: Načtení celého vstupu do std::string v jednom příkazu

Včera jsem s kamarádem řešil, zda a jak lze v C++ načíst celý obsah vstupu do std::string v jediném příkazu. Pokud by to někoho zajímalo, tak odpověď dává následující krátký příspěvek.

Méně známé skutečnosti o C a C++: Sekvenční body

Následující příspěvek je nejen pro ty, kterým kód a[i] = i++; připadá v pořádku, či kteří si myslí, že rozdíl mezi ++i a i++ je v tom, že ten druhý způsobí zvýšení hodnoty i až po dokončení zpracování výrazu, kde se vyskytuje ;).

Zajímavé úlohy pro programátory v C a C++ #10

Po delší době přináším další hádanku z oblasti programovacích jazyků C a C++. Tentokrát budeme řešit triviální věc nekonvenčním způsobem. Nic složitého to ale nebude a tak postačí dostatek důvtipu :).

Méně známé skutečnosti o C a C++: Standardní proud clog

Když se zeptáte programátora v C++ na standardní proudy (streams), tak vám většinou odpoví cin, cout a cerr (případně s kvalifikátorem std::). Již méně se ale ví, že těchto standardních proudů je více -- patří mezi ně mj. ještě clog (celkem existuje osm standardních proudů, ale to je pro nás teď nepodstatné). Tento proud a jeho možné využití bych vám chtěl velmi krátce představit v následujícím příspěvku.

Méně známé skutečnosti o C a C++: Makra s proměnným počtem parametrů

S funkcemi, které berou proměnný počet parametrů ("nerdy speaking", mají proměnnou aritu), už se zřejmě každý setkal (nejznámějším příkladem je dvojice funkcí scanf() a printf()). V C99 byla zavedena podpora i pro makra s proměnným počtem parametrů (variadic macros, někdy překládáno jako "variadická makra"). Jak taková věc vypadá a k čemu to lze použít se dozvíte v následujícím příspěvku.

Stránky

Přihlásit se k odběru RSS - C++