for (int i = 0; i < slowo.Length(); i++) {
Label2->Caption += gadery(slowo[i]);
}
AFAIK indeksowanie w AnsiStringu jest od 1, a nie od 0, jak ma to miejsce w cywilizowanych językach (VCL -> Delphi -> Pascal).
BTW używanie C++ Bulidera 6 u schyłku 2019 roku, to jak puszczenie bąka w towarzystwie dam :) Używaj współczesnych środowisk programistycznych.