<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>i-extra.net &#187; C/C++</title>
	<atom:link href="http://i-extra.net/rubrika/programovani/c-cpp-na-tema/feed/" rel="self" type="application/rss+xml" />
	<link>http://i-extra.net</link>
	<description>Portál o IT a společnosti</description>
	<pubDate>Thu, 01 Jan 2009 10:19:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>cs</language>
			<item>
		<title>Seriál o C++ - 1. díl - Hello World</title>
		<link>http://i-extra.net/zpravy/aktualne/serial-o-c-1-dil-hello-world/</link>
		<comments>http://i-extra.net/zpravy/aktualne/serial-o-c-1-dil-hello-world/#comments</comments>
		<pubDate>Sat, 16 Aug 2008 23:00:37 +0000</pubDate>
		<dc:creator>Roman Beránek</dc:creator>
		
		<category><![CDATA[Aktuálně]]></category>

		<category><![CDATA[C/C++]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[hello world]]></category>

		<category><![CDATA[tutorial]]></category>

		<category><![CDATA[Visual studio]]></category>

		<guid isPermaLink="false">http://i-extra.net/?p=1419</guid>
		<description><![CDATA[Dnes si ukážeme jak ve Visual Studiu vytvořit jednoduchý projekt a napíšeme si první aplikaci - "Hello World".]]></description>
			<content:encoded><![CDATA[<p>Zdravím vás u čtení pokračování seriálu o C++. V předchozím díle jsme si řekli něco o historii jazyka a jeho použití. Dnes si ukážeme, jak ve Visual Studiu vytvořit jednoduchý projekt a napíšeme si první aplikaci - <strong>&#8220;Hello World&#8221;</strong> .</p>
<h2>Příprava</h2>
<p>V minulém díle jsem vám ukázal dvě IDE, předpokládám, že jste si vybrali Visual Studio 2008 Express Edition. Založíme si nový projekt kliknutím na <em>File -&gt; New -&gt; Project&#8230;</em> Vybereme Empty project a nazveme jej třeba Hello World. Tímto jsme vytvořili nový projekt a můžeme jít dál.</p>
<p style="text-align: center;"><a href="http://i-extra.net/wp-content/1/newproject.jpg"><img class="aligncenter size-thumbnail wp-image-1420" title="newproject" src="http://i-extra.net/wp-content/1/newproject-150x150.jpg" alt="Dialogové okno pro vytvoření nového projektu" width="150" height="150" /> </a></p>
<p style="text-align: left;">V pravé části máte okno s názvem Solution Explorer. Otevřete kontextovou nabídku složky Source Files a klikněte na <em>Add -&gt; New Item&#8230;</em> V dialogu vyberte <em>C++ File (.cpp)</em> . Ve složce Source Files se objeví náš soubor a v hlavním okně se otevře nová záložka, kde můžeme psát kód.</p>
<p style="text-align: center;"><a href="http://i-extra.net/wp-content/1/newfile.jpg"><img class="size-thumbnail wp-image-1422" style="vertical-align: middle;" title="newfile" src="http://i-extra.net/wp-content/1/newfile-150x150.jpg" alt="Dialogové okno pro vytvoření nového souboru" width="150" height="150" /> </a></p>
<h2>Hello World</h2>
<p>Nyní si napíšeme nejjednodušší program s výstupem na obrazovku, co lze napsat. Následující kód vložte do souboru:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp"><span style="color: #339900;">#include &lt;iostream&gt;</span>
&nbsp;
<span style="color: #0000ff;">using</span> <span style="color: #0000ff;">namespace</span> std;
<span style="color: #0000ff;">int</span> main<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #ff0000;">//Vstupní bod programu</span>
<span style="color: #000000;">&#123;</span>
<span style="color: #0000dd;">cout</span> &lt;&lt;<span style="color: #666666;">&quot;Hello World&quot;</span>&lt;&lt;endl;
<span style="color: #0000ff;">return</span> <span style="color: #0000dd;">0</span>;
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>Klikněte na <em>Build -&gt; Build Hello World</em> , počkejte až se program zkompiluje a pak jej spusťte kliknutím na zelenou šipku. Vidíte tohle:</p>
<p><a href="http://i-extra.net/wp-content/1/debug.jpg"><img class="aligncenter size-thumbnail wp-image-1421" title="debug" src="http://i-extra.net/wp-content/1/debug-150x150.jpg" alt="Okno s programem" width="150" height="150" /> </a></p>
<p>Ano, a to je vše, stisknutím Enteru program ukončíte. Nyní si popíšeme, jak program funguje.</p>
<h3>Popis</h3>
<p>Na začátek souboru vložíme pomocí direktivy include hlavičkový soubor iostream, špičaté závorky říkají preprocesoru, aby soubor hledal v systémových hlavičkových souborech, kdybychom použili uvozovky, hledal by jen v adresáři s projektem. Soubor iostream (bez přípony) umožňuje mimo jiné výstup na obrazovku.<br />
Následuje direktiva using namespace. Většina tříd, funkcí, objektů má svůj jmenný prostor, aby jejich jména nekolidovala s jinými, již použitými názvy. Když budeme používat jmenný prostor std, nemusíme psát prefix std:: před objekty cout a cin.<br />
Funkcí main() to všechno začíná (a končí :-D). Vrací hodnotu typu int (integer - celočíselná hodnota) a nepříjmá žádné (může přebírat parametry spuštění, ale o tom napíšu někdy jindy).<br />
Složené závorky uvozují blok příkazů. Následuje příkaz cout &lt;&lt; &#8220;Hello World&#8221; &lt;&lt; endl;. Cout je objekt třídy ostream (out stream - výstupní proud) a &lt;&lt; je přetížený parametr, ve skutečnosti je to metoda (funkce) operator&lt;&lt; objektu cout. Metodě operator&lt;&lt; nejprve předáváme řetězec &#8220;Hello World&#8221; a poté objekt endl, který vytvoří nový řádek.<br />
Druhý příkaz v bloku příkazů funkce main() je volání metody get() objektu cin, který zajišťuje vstup z klávesnice. Díky tomuto příkazu se program nevypne hned, jak vypíše &#8220;Hello World&#8221;.<br />
Přikaz return 0; způsobí, že funkce main() vrátí nulu a ukončí se, čímž ukončí celý program. Nula znamená, že se program ukončil správně. Následuje ukončení bloku a to je vše.<br />
Na příkladu jste si také mohli všimnout komentářů. Komentáře se používají pro lepší čtení kódu druhými, psát komentáře je povinnost každého programátora. To je jako když v matematice nenapíšete, jak jste na ten výpočet přišli. Komentáře se zapisují pomocí dvou lomítek (jednořádkový komentář), pokud chcete víceřádkový a nechcete každý řádek začínat dvěma lomítky můžete použít /* pro začátek komentáře a */ k jeho ukončení. Tento styl se používal v C, v původní verzi to byl jediný způsob zapisování komentářů.</p>
<h3>Proč Hello World?</h3>
<p>Hello World je nejjednodušší program, kterým se začíná každá výuka programování. Prostě pozdravíme svět <img src='http://i-extra.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<h2>Závěr</h2>
<p>Tak to je pro dnešek vše, příště se blíže podíváme na proměnné a jejich typy.<br />
<strong><em>Korektura: Jindřich Domanja, 14. 8. 2008</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://i-extra.net/zpravy/aktualne/serial-o-c-1-dil-hello-world/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Seriál o C++ - Úvod</title>
		<link>http://i-extra.net/programovani/c-cpp-na-tema/serial-o-c-uvod/</link>
		<comments>http://i-extra.net/programovani/c-cpp-na-tema/serial-o-c-uvod/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 18:49:17 +0000</pubDate>
		<dc:creator>Roman Beránek</dc:creator>
		
		<category><![CDATA[C/C++]]></category>

		<category><![CDATA[.NET]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[CLI]]></category>

		<category><![CDATA[Dev-Cpp]]></category>

		<category><![CDATA[IDE]]></category>

		<category><![CDATA[OOP]]></category>

		<category><![CDATA[Programování]]></category>

		<category><![CDATA[Visual Studio 2008]]></category>

		<guid isPermaLink="false">http://i-extra.net/?p=1415</guid>
		<description><![CDATA[V "nultém" díle seriálu vám osvětlím historii jazyka, co od něj můžete očekávat a co budeme potřebovat pro programování.]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-family: Calibri; font-size: small;">Vítejte u prvního dílu seriálu o C++. Seriál je určen pro začátečníky, ale i programátoři přecházející z jiných jazyků se zde mohou leccos přiučit. </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-family: Calibri; font-size: small;">Na úvod vám osvětlím historii jazyka, co od něj můžete očekávat a co budeme potřebovat pro programování.</span></p>
<h2>Historie</h2>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-family: Calibri; font-size: small;">Během několika posledních desetiletí se výpočetní technika rozvinula úžasnou rychlostí. Obyčejný mobilní telefon je schopen pracovat rychleji než sálový počítač před čtyřiceti lety. Programovací jazyky se též rozvinuly. Změny možná nejsou tak dramatické, ale jsou podstatné. Výkonnější počítače umožňují vznik složitějších programů, které zase způsobují nové problémy ve správě a údržbě. </span></p>
<p><span style="font-family: Calibri; font-size: small;">Protože C++ staví na jazyku C, měli bychom se nejdřív podívat na něj.</span></p>
<h3>Jazyk C</h3>
<p><span style="font-family: Calibri; font-size: small;">Jazyk C vznikl v 70. letech v laboratořích Bell Laboratories. Navrhl jej Dennis Ritchie pro operační systém UNIX. Ritchie potřeboval jazyk, který by byl stručný a výstižný, vytvářel robustní a rychlé aplikace a mohl řídit hardware. Ritchie chtěl jazyk, který by spojoval efektivitu a možnosti strojového jazyka s vyšší úrovní všeobecnosti jazyka a přenositelnosti. A tak na základě starších programovacích jazyků vytvořil jazyk C.</span></p>
<h3>C++</h3>
<p><span style="font-family: Calibri; font-size: small;">Jazyk C++ vznikl taktéž v Bell Labs, kde ho počátkem 80. Let vyvinul Bjarne Stroustrup. Citace: &#8220;C++ byl původně navržen proto, abychom (mí přátelé a já) nemuseli programovat v Assembleru, jazyku C nebo jiných vysokoúrovňových jazycích. Jeho hlavním účelem bylo zjednodušit a zpříjemnit programátorům psaní dobrých programů&#8221;(Bjarne Stroustrum, <em style="mso-bidi-font-style: normal;">The C++ Programming Language</em> , 3. Vydání.<span style="mso-spacerun: yes;"> </span>Reading MA: Addison-Wesley Publishing Company, 1997).</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-family: Calibri; font-size: small;">Stroustrup přidal do C vlastnosti OOP, aniž by významně změnil složku C. C++ je tedy nadstavba znamenající, že každý program napsaný v C je také platným programem pro C++. Programy v C++ mohou využívat softwarové knihovny C. Knihovny jsou kolekce programových modulů, které můžete volat z programu.</span></p>
<h2>Účel C++</h2>
<p><span style="font-family: Calibri; font-size: small;">C++ je určeno pro projekty, kde je potřeba vysoká efektivita a / nebo přímý přístup k hardwaru. V minulých letech jej však programátoři používali víceméně na všechno, jelikož neměl velkou konkurenci. Dnes však existují jazyky, které některé obory zvládají lépe (elegantněji) než C++. Například absence Garbage Collectoru&#8230; V C++ si musíte veškerou paměť hlídat sami (v některých programech se C++ používá právě z tohoto důvodu), a tak mohou snadno vzniknout úniky paměti (memory leaks), které se v programu velmi špatně hledají.</span></p>
<h2 style="margin: 24pt 0cm 0pt;">Co budeme potřebovat?</h2>
<p><span style="font-family: Calibri; font-size: small;">K tomu, abyste mohli napsat a spustit svůj vlastní program v C++, budete potřebovat nějaké vývojářské prostředí (IDE - Integrated Development Environment). Můžete psát klidně v notepadu a kompilovat v gcc pod cygwinem (nebo nativně v Linuxu). Pro začátečníky, ale bude přece jen lepší IDE. Mezi dvě nejpoužívanější patří:</span></p>
<h3 style="margin: 10pt 0cm 0pt;">Microsoft Visual C++ 2008 Express Edition</h3>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span style="font-size: small;"><span style="font-family: Calibri;"><strong style="mso-bidi-font-weight: normal;">Download:</strong> <a href="http://www.microsoft.com/express/vc/" target="_blank">http://www.microsoft.com/express/vc/</a> </span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span style="font-size: small;"><span style="font-family: Calibri;"><strong style="mso-bidi-font-weight: normal;">Verze:</strong> 9.0</span> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small;"><span style="font-family: Calibri;"><strong style="mso-bidi-font-weight: normal;">Velikost:</strong> V závislosti na instalovaných prostředcích až 1GB.</span> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-family: Calibri; font-size: small;">Visual C++ 2008 EE je podle mě nejlepší zdarma dostupné IDE. Obsahuje projektové šablony, inteligentní nápovědu IntelliSense a umožňuje psát v C++/CLI (rozšíření C++ pro .NET framework). Někomu může vadit přílišná robustnost, pro ty tu je:</span></p>
<h3 style="margin: 10pt 0cm 0pt;">Dev-Cpp</h3>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span style="font-size: small;"><span style="font-family: Calibri;"><strong style="mso-bidi-font-weight: normal;">Download</strong> : <a href="http://www.bloodshed.net/dev/devcpp.html" target="_blank">http://www.bloodshed.net/dev/devcpp.html</a> </span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span style="font-size: small;"><span style="font-family: Calibri;"><strong style="mso-bidi-font-weight: normal;">Verze:</strong> 4.9.9.8</span> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small;"><span style="font-family: Calibri;"><strong style="mso-bidi-font-weight: normal;">Velikost:</strong> cca 9MB</span> </span></p>
<p><span style="font-family: Calibri; font-size: small;">Dev-Cpp je určen pro ty, co potřebují kompaktní IDE. Obsahuje kompilátor gcc z Linuxu. Umí zvýrazňování syntaxe, ale celkově to není žádný zázrak, a ani uživatelské rozhraní není dvakrát přívětivé.</span></p>
<h2 style="margin: 24pt 0cm 0pt;">Závěr</h2>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-family: Calibri; font-size: small;">Tak to je pro dnešní díl vše, příště si vytvoříme první program &#8220;Hello World&#8221; a rozebereme si, jak funguje.</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><em><strong>Korektura: Roman Beránek 10.8.2008</strong> </em></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><em></em></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><strong><em>Dodatečná korektura: Jindřich Domanja, 11. 8. 2008</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://i-extra.net/programovani/c-cpp-na-tema/serial-o-c-uvod/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
