Witam napisałem program, w którym głównym aspektem są łańcuchy czy istnieją funkcje wbudowane na optymalizacje tego kodu ? (Proszę o podpowiedź, chcę sam spróbować je wykorzystać).
#include <iostream>
//typy funkcji mogą rożnić się od typów parametrów
int fun_1 (char * x, int licz); //funkcja zawierajaca łańcuch jako parametr
char * lan (char y, int cyfra);//funkcja zwaracaja wskaznik, adres łańcucha
int main()
{
// I pierwsza funkcja
char slowo[12] = "amazonka";
int ps = fun_1(slowo, 'a');
std::cout << "Litera \"a\" wystepuje " << ps << " w slowie " << slowo;
// II druga funkcja
std::cout << "\n\n\n\n";
int zlicza;
char litera;
std::cout << "Podaj znak: ";
std::cin >> litera;
std::cout << "Dlugos lancucha: ";
std::cin >> zlicza;
char * ww = lan(litera, zlicza);
std::cout << ww << std::endl;
return 0;
}
int fun_1(char * x, int licz)//zlicza wystapienie znaku licz
{
int zwieksza = 0;
while(*x) // petla konczy sie gdy *x jest rowne '\0'
{
if(*x == licz)
zwieksza++;
*x++; // musi byc..przesuwa wskaznik na nastepny znak
}
return zwieksza ;
}
char * lan (char y, int cyfra)//tworzenie łańcucha znaku z cyfra z wystapiem znaku y
{
char * gr = new char [cyfra +1];
gr[cyfra] = '\0';
while(cyfra-- > 0)
gr[cyfra] = y;
return gr;
}