Pointer vs pole

Jan Waclawek konfera na efton.sk
Čtvrtek Květen 12 13:48:25 CEST 2016


> Jen taková malá nevýznamná puristická poznámka.
> Pokud víte, µe ukazatel ukazuje na lineárně souvislou oblast paměti stejného
> uµití o stejném typu (abych nepouµil výrazu pole, kdyµ to vlastně pole není
> :-), tak je lep±í zapsat argument jako t[]. Není v tom prakticky µádný
> rozdíl, ale ten kdo tu funkci bude pouµívat můµe správně předpokládat, µe
> argument je pole a ne ukazatel na jednu hodnotu, kterou chceme modifikovat.
>
> Bohuµel, postfixová forma [] u argumentů funkcí se pouµívá málokdy v tomto
> významu ...


Ono to sice metodicky mozno je uzitocne, ale na druhej strane to ma aj
urcity nedostatok: menej skuseny programator moze nadobudnut pocit, ze
naozaj ide o pole, a moze sa tam prejavit ten specificky problem so sizeof.

Mimochodom, od C99 (6.7.6.3#7) ide predpisovat do tej hranatej zatvorky aj
kvalifikatory (teda najma const, a aj volatile ale to nema prilis zmysel)
a static. Je to marginalna a nie prilis pouzivana funkcionalita; pre
podrobnosti doporucujem okrem uvedeneho odstavca normy najma prislusne
riadky z knizky Dereka Jonesa.


>wek - děkuji za odkaz je to tam hezky shrnuté. Z jaké je to kníµky?


No... z mojej... ;-)

wek



Daląí informace o konferenci Hw-list