Co je nevýhodou použití ukazatele v C?

Nevýhodou vím, je, že pokud uděláte chybu při manipulaci s ukazateli může dokonce vést k havárii systému ....
 
sundarmeenakshi, nejzákeřnější chyby s neinicializovaných ukazateli. Předpokládejme, že ukazatel má nějakou náhodnou hodnotu. Můžete ukládat data a načíst ho pomocí myši. 1) * ukazatel = x. 2) x = * ukazatel. Tato metoda funguje tak dlouho, jak (náhodné) adresa zástupce ukazatel se nepoužívá na nic jiného. Pokud je adresa se používá pro něco jiného, ​​pak tato data (nebo instrukce) na místě zastoupené ukazatel bude zničena provedení pokynu 1 výše. Teď, tady je ta zábavná část: Předpokládejme, že vložíte printf prohlášení pokusu o ladění problém. Po rekompilaci, je náhodný adresa zástupce ukazatel slouží k držení další část dat nebo instrukce, a původní problém zmizí, jen se objevit někde jinde v programu. . Použití ukazovátka requries disciplíny. Pravidlo číslo jedna je "aways inicializovat ukazatele". Pokud budete mít štěstí, bude váš complier inicializovat ukazatel hodnotu NULL (nula), což bude mít za následek run-time error ve většině prostředí. Pozdravy, Král
 
Thier by nevýhody ukazatele, pokud nejste manipulaci s nimi správně. A v některých případech nemusí být snadnější ladění.
 
jsou snadno pochopitelné, ale ne k použití vhodně. pokud dáváte struct do parametru funkce, a pokud to struct je velký, s použitím ukazatel budete používat méně paměti pro program, běží rychleji. Totéž platí s poli. Myslím, že ukazatele jsou nezbytné pro programátory, protože rychlosti a velikosti.
 
Ukazatele jsou velmi silné, což vám umožní psát rychlé a efektivní kód. Jsou jedním ze silných stránek jazyka C. C kód bez ukazatelů je jako pivo bez alcahol, dostatek těla, ale žádný šmrnc. Nejsou žádné nevýhody ukazatelů v C.
 
bych radu btbass, aby se přes podívat na co kniha, kterou studuje .... když je ukazatel není správně intialised nebo správně zacházet si můžete být jisti, že se něco hrozného se stane ur PC .... program má být v bezpečí za všech okolností ....
 
pokud ukazatel začal směřovat k systému vyhrazené paměti pak to může způsobit sytem nestabilita. jako okna má specifickou oblast RAM vyhrazena pro OS, pokud ukazatel činí cahnges do této oblasti, pak bude virus jako operace. jako některé vtipné věci otevřít naše CD-ROM, který je jen o přístupu k této oblasti
 
Je to stejně snadné zkazit jakýkoli aspekt programu, pomocí unintialised proměnných, míchání podepsané a nepodepsané celá čísla, není lov výjimky, ukazatele nejsou snadnější zkazit, než jakékoli jiné funkce. Ukazatele vám pomohou psát elegantní efektivní kód. Když jsem napsat program pro PC, já používám C #, moderní programovací jazyk, který překonává mnoho z přehlédnutí, které lze snadno přehlédnout. Ale hodně programování zahrnuje 8 bit Micros, a C je král pro tento typ aplikace. Já také použít statickou analýzu mého kódu pomocí hadříku. Lint najde všechny druhy temných chyb. Pokud váš kód padá, protože uninitialised ukazatelů, že není chyba C! Ale váš nedostatek řádného testování. Použití ukazatele by měly být podporovány, dávají C za jeho okraj.
 
Také je potřeba se ujistit, že reference a dereference je propoerly, jinak budete používat adresy namísto údajů.
 

Welcome to EDABoard.com

Sponsor

Back
Top