Program z parametrem funkcji

Program z parametrem funkcji
lukashid
  • Rejestracja:ponad 11 lat
  • Ostatnio:17 dni
  • Postów:93
0

Napisałem sobie programik do wywoływania z parametrami :

Mam w nim taką funkcję :

Kopiuj
int uruchom(char funct[],int value){
  int result;
  if(strcmp(funct,"silnia")==0) {
    result = silnia(value);
    return result;
  }
  else if(strcmp(funct,"suma")==0) {
    result = suma(value);
    return result;
  }
  else {
    return -1;
  }
}

int silnia(int n) {
  if(n == 1) return 1;
  else {
    return n *silnia(n-1);
  }
}

int suma(int n) {
    if(n == 1) return 1;
    else {
      return n + silnia(n-1);
    }
}
 

I wywołuję ją w taki sposób

Kopiuj
uruchom(argv[1], readInt); 

I niestety po wywołaniu programu z parametrem np. silnia wyskakuje błąd.
Jeśli jednak zamiast pierwszego argumentu funkcji uruchom podczas wywołania wpiszę samo "silnia" to działa prawidłowo. O co może chodzić ??

_13th_Dragon
  • Rejestracja:ponad 19 lat
  • Ostatnio:6 dni
1
Kopiuj
if(argc>1) uruchom(argv[1], readInt);
else return 1;

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.