#1 Cooda
255 je takový nepsaný zvyk. Určitě tam jsou nějaké historické podklady k tomu, dnes je to částečně způsobeno tím že některé programy neumí s delším jak 255 znakovým polem pracovat. Jestli se nemýlím je to například Access.
Velikost si můžeš zvolit jakou chceš, ale bez v ůvahu že za každého nového člena máš další bajt v paměti.
Co se ukončení týče, getline by se měl zaseknkout u znaku '\0', tedy ukončující znak a dál by číst neměl. Stejně tak cout. Tudíž vytvoříš-li pole, poté jej celé naplníš znakem '\0' a teprve poté s ním budeš pracovat, výstup by se měl zastavit u konce.
Pokud chceš vytvořit pole, u kterého nevíš jeho velikost a nechceš plýtvat místem, slouží k tomu kontainery. Ale to je trošku pokročilejší technika ke které jsem se ještě nedostal ani já :D (no spíš jsem byl ještě línej si o tom něco načíst :D) takže s tím ti neporadím. Ale jak říkám je to pokročilejší a pokud tady řešíš velikost pole, tak nemyslím že by sis měl troufat na toto.
Jinak ještě poznámka, pokud chceš zjistit, jestli něco jde nebo nejde, tak to prostě napiš, zkompiluj a zkus ;-) Chybami se člověk učí :) Přinejhorším se dostaneš na BlueScreen ;-) :D