Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
 funkcie v C a C + + sa správajú , ako sa očakávalo , v porovnaní s inými programovacími jazykmi . Funkcie existujú , rovnako ako akékoľvek iné premenné alebo systémové informácie v pamäti a sú odvolával sa na základe adresy . Funkcie , ktoré samy o sebe , sú len bloky kódu v pamäti , ktoré sú uvedené . Akákoľvek chyba vyvolaná odkazom funkcia môže byť v dôsledku nelegálnej funkcie , alebo funkcie nazýva nesprávne . Chyba pretečenia bufferu by s väčšou pravdepodobnosťou pochádzajú z kódu vnútri funkcie . 
 Premenné a pamäti 
 
 C + + je staticky napísaný , čo znamená , že programátor musí špecifikovať typ premennej pri deklarovaní premennej . To je preto , že C + + zruší pamäťových blokov určitej veľkosti na základe premennej typu . Číslo ( int ) premenná deklarovaná v programe dostanú priestor v pamäti zrušil špeciálne pre int . Blok pamäte bude presná veľkosť celé číslo . 
 Pole 
 
 polia sú kolekcie premenných obsiahnutých v jedno meno . Napríklad , pod pole vytvorí zoznam 10 čísel , ktoré sú prístupné pomocou odkazu index ( názov [ 0 ] , názov [ 1 ] , atď ) 
 
 int názov [ 10 ] ; 
 
 Namiesto jednej celé číslo , pole vyčleňuje dostatok kontinuálne priestor pre 10. Avšak, pretože prístup index poľa môže byť pokus o hodnotách nad rámec toho , čo je obsiahnuté v poli ( meno [ 11 ] , napríklad ) , môže dôjsť k chybám , ak programátor nie je sledovať , ako sa používa pole . 
 
 Buffer Overflow 
 
 Vzhľadom na povahu polí v C + + , pole vnútri funkcie môže obetí pretečeniu vyrovnávacej pamäti . Ak užívateľ zadá znak vstup väčší ako pole môžete zvládnuť , budú nadbytočné znaky prepísať dáta , priľahlé k poľu v pamäti . Napríklad , 
 
 void Príklad ( ) { int 
 
 login [ 15 ] ; 
 
 int i = 0 ; 
 
 while ( cin >> [ i ] ) { 
 
 i + + ; 
 
 } 
 
 } 
 
 " , zatiaľ čo " loop nikdy neskončí , a v čase, keď " i " dosiahne 15 , sa používateľ spustiť vkladanie dát , ktorý prepíše pamäť . To môže mať nezamýšľané dôsledky , ako je napríklad preradenie lokálne premenné , alebo , za určitých okolností , prepisovanie funkčných ukazovateľov na odkazujú na iný , škodlivý kód .