Warning: Declaration of action_plugin_subjectindex_indexer::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/action/indexer.php on line 15
Warning: Declaration of action_plugin_mathjax_enable::register(Doku_Event_Handler &$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/mathjax/action/enable.php on line 62
Warning: Declaration of action_plugin_googleanalytics::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/googleanalytics/action.php on line 40
Warning: Declaration of action_plugin_folded::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/folded/action.php on line 40
Warning: Declaration of action_plugin_hidden::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/hidden/action.php on line 28
Warning: Declaration of action_plugin_include::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/include/action.php on line 354
Warning: Declaration of action_plugin_tag::register(&$contr) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/tag/action.php on line 175
Warning: Cannot modify header information - headers already sent by (output started at /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/action/indexer.php:15) in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/auth.php on line 532
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/auth.php on line 818
Warning: Cannot modify header information - headers already sent by (output started at /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/action/indexer.php:15) in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/actions.php on line 656
Warning: Cannot modify header information - headers already sent by (output started at /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/action/indexer.php:15) in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/actions.php on line 656
Warning: Cannot modify header information - headers already sent by (output started at /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/action/indexer.php:15) in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/actions.php on line 656
====== Předání parametru odkazem ======
* [[dox>predani-parametru-odkazem/transformace-textu.c|Transformace_textu]]
* [[dox>predani-parametru-odkazem/celociselne-deleni.c|Celočíselné_dělení]]
* [[dox>predani-parametru-odkazem/swap.c|swap]]
* param[in] param[out], param[in,out]
======Předání parametru hodnotou======
Jedná se o námi doposud užíváný způsob předání parametrů funkci,
který je vhodný pouze pro vstupní parametry a datové typy s relativně malou velikostí
(základní datové typy, malé struktury).
Formální parametr je běžná proměnná požadovaného typu (např. int moje_fce(int data);),
skutečný parametr při volání funkce je pak libovolný výraz daného typu (např. vysl = moje_fce(3 * cislo);).
Při realizaci volání funkce se hodnota skutečného parametru ukládá do oblasti
parametrů funkce v paměti.
terminologie: parametr versus argument
======Předání parametru odkazem======
Tento způsob předání parametrů lze použít jak pro vstupní tak pro výstupní
parametry funkce.
Běžně se používá se pro předání pole (pole nelze předat hodnotou),
větších struktur a jakýchkoli dalších typů, mají-li být výstupní.
Formální parametr zde je ukazatel na požadovaný typ (např. int moje_fce(int
*data);), skutečný parametr při volání funkce je pak adresní výraz (např. vysl
= moje_fce(&cislo);).
Při realizaci volání funkce se do oblasti parametrů funkce ukládá pouze adresa,
funkce používá dereferenci,
data se nekopírují a lze k nim tedy přistoupit i po opuštění funkce.
----
cc,upol