ďťż

Ładny brzuch

Witam, chciałbym się dowiedzieć jak pobrać liczbę całkowitą, która jest argumentem do uruchamiania programu. Czy można ustawić **argv na typ int ? Jeżeli tak, to dlaczego ten kod nie działa ?
#include <stdio.h> int main(int argc, int **argv) { int a = 0; while(*++argv != NULL) a += **argv; printf("%d\n", a); }
A jeżeli **argv musi być wskaźnikiem na wskaźnik na znak, to czy jest lepsze rozwiązanie niż to (nie działa prwidłowo przy liczbach mających więcej niż 1 cyfrę) ?
#include <stdio.h> int main(int argc, char **argv) { int a = 0; while(*++argv != NULL) a += (int )**argv - 48; printf("%d\n", a); }
Z góry THX

P.S Na goglach szukałem, jak narazie bez skutku.
Użytkownik Balcerowicz edytował ten post 20 kwiecień 2005, 21:51



...


Hmmm a może użyć atoi (ze stdlib.h) zamiast sie męczyć ręcznie?

int main(int argc, char** argv){   int a = atoi(argv[1]); }

btw... jeśli to dość rozbudowane parametry zastanów się czy nie warto użyc np. argp :)

Mam takie pytanie:

Według ciepie co ma się pokazać na ekranie po skompilowaniu obu programów ???
Bo mniej więcej wiem o co ci chodzi ale nie wiem po co :)
Użytkownik MitS79 edytował ten post 20 kwiecień 2005, 22:00



Mam takie pytanie:

Według ciepie co ma się pokazać na ekranie po skompilowaniu obu programów ???
Bo mniej więcej wiem o co ci chodzi ale nie wiem po co :)

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •