Zadavanje imena sa komandne linije kod glavnog programa

1

Zadavanje imena sa komandne linije kod glavnog programa

offline
  • dada89  Female
  • Novi MyCity građanin
  • Pridružio: 02 Maj 2007
  • Poruke: 13
  • Gde živiš: Backa Palanka

Treba da napisen seminarski rad za skolu. na temu "Parametri glavnog programa pri cemu se imena datoteka zadaju sa komandne liniije".Teorijski deo sam odradila,a sam mi treba neki prost primer,jer ne smem da koristim primere sa casova!!!



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

int main(int argc, char** argv)...

Kao parametre glavne funkcije pises one parametre koje ces uneti u kamandnoj liniji.

Program pozivas sa: myprog.exe prvi_parametar drugi_parametar

Znaci prvi_parametar ce bitiucitan kao argcm drugi_parametar kao argv.



offline
  • dada89  Female
  • Novi MyCity građanin
  • Pridružio: 02 Maj 2007
  • Poruke: 13
  • Gde živiš: Backa Palanka

Hvala,valjda cu dobiti dobru ocenu!!Snacu se nakako

offline
  • Pridružio: 26 Jul 2004
  • Poruke: 1472
  • Gde živiš: Vojvodina,Zrenjanin

int argc predstavlja broj parametara, a char *argv pokazivac na string gde su argv[0] naziv programa ,argv[1] prvi parametar itd.

Znaci ako je argc=1 program ima jedan parametar i on se nalazi u argv[1]
Wink

offline
  • dada89  Female
  • Novi MyCity građanin
  • Pridružio: 02 Maj 2007
  • Poruke: 13
  • Gde živiš: Backa Palanka

Nije problem u tome,to sam ja sve napisala,i odradila,ali pored teorijskom dela moramo sami smisliti neke zadatake sa tim parametrma al' nesmemo koristiti zadatke iz knjige i sveske.Pa ako neko ima zadatak koji bi mogla iskorititi a da je u vezi ovoga...

offline
  • Pridružio: 26 Jul 2004
  • Poruke: 1472
  • Gde živiš: Vojvodina,Zrenjanin

Ne znam koje zadatke imas u knjizi i svesci Smile ali evo ti primer na ovom programu:
int main(int brpar ,char *par[]) {        int broj,prost=0;    if(brpar==1) {       cout << "Unesite broj: ";       cin >> broj;    }    else       broj=atoi(par[1]);    if(broj==2)       cout << "Broj " << broj <<" je prost."<<endl;    else {       double   kr=sqrt(broj);       for(int i=2;i<=kr+1;i++)           if((broj%i)==0) {             cout << "\nBroj " << broj <<" nije prost."<<endl;             prost=0;             break;          }          else             prost=1;       if(prost==1)          cout <<"Broj " << broj<<" je prost."<<endl;       }                return 0; }
Program racuna prost broj ali to nije vazno vec kad mu ukucas naziv mozes odmah da ukucas i broj koji ce da proverava a ako ne uneses pitace te za broj koji proveravas Wink

offline
  • dada89  Female
  • Novi MyCity građanin
  • Pridružio: 02 Maj 2007
  • Poruke: 13
  • Gde živiš: Backa Palanka

Hvala puno na pomoci!!!

Ej izvini onaj tvoj program javlja greske,al ja neznam sta to znaci jer nismo to radili "cout << "Broj " << broj <<" je prost."<<endl;"...Dobro sad ces ti reci uzmi knjigu u sake i uci,al. veruj mi da se trudim,samo sto to ne vredi kad nema niko da ti objasni ni one osnove programiranja...Vama je to smesno ali evo vam jednog primera :Druga godina srednje skole(smer-elektrotehnicar racunara) a nama profesorica nije znala da objasnini zbog cega se na pocetak programa koristi stavlja #include ...pa vi sad vidite...

offline
  • Pridružio: 26 Jul 2004
  • Poruke: 1472
  • Gde živiš: Vojvodina,Zrenjanin

Tek sad sam video tvoju poruku ovde, neznam kako!

Pa ako je jos aktuelno proveri da li imas na pocetku koda

#include <iostream>
#include <cmath>
using namespace std;
to sam mislio da znas da treba da stavis.

offline
  • dada89  Female
  • Novi MyCity građanin
  • Pridružio: 02 Maj 2007
  • Poruke: 13
  • Gde živiš: Backa Palanka

Ma nije problem u tome,nego sto smo mi radili samo sa #include<stdio.h>
i #include<stdlib.h>
ali samo malloc i calloc realloc i free funkcije.A ovo da napisem odma bi dobila keca,jer to nismo radili pa bi me odma provalio.

Ajde ako mozes da smislis nesto do veceras jer sutra trea to da predam!!!

offline
  • Pridružio: 26 Jul 2004
  • Poruke: 1472
  • Gde živiš: Vojvodina,Zrenjanin

Aha znaci u pitanju je C a ne C++.
Ove funkcije malloc,calloc,realloc sluze za dinamicko dodeljivanje memorije.Evo ti primer:

#include<stdio.h> #include<malloc.h> #include<stdlib.h> #include<math.h> void main(int brpar,char *par[]) {    int *niz;    int i,brEl=0;;    if(brpar==1) {       printf("Unesite broj elemenata niza: ");       scanf("%d",&brEl);    }    else       brEl=atoi(par[1]);    niz=(int*)calloc(brEl,sizeof(int));    for(i=0;i<brEl;i++) {       printf("Unesite %d element niza: ",i);       scanf("%d",&niz[i]);    }    for(i=0;i<brEl;i++)       printf("%d\t",niz[i]);    free(niz); }
Isto mozes da predas parametar prilikom poziva a to je ovde broj elemenata niza koji kasnije smestas u dinamicku memoriju Wink
[/code]

Ko je trenutno na forumu
 

Ukupno su 1227 korisnika na forumu :: 37 registrovanih, 7 sakrivenih i 1183 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 357magnum, AC-DC, ajo baba, Apok, Atomski čoban, Bobrock1, Brana01, BRATORIII, Bubimir, Djokkinen, doktor1964, DonRumataEstorski, Excalibur13, FileFinder, flash12, frenki1986, goxin, Insan, Istman, kolle.the.kid, Kubovac, kunktator, Mi lao shu, Mikulino, milenko crazy north, pein, samsung, ser.hill, Smajser, Srle993, StepskiVuk, suton, Trpe Grozni, vathra, voja64, wolf431, 79693