Hirdetés
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- AMD Navi Radeon™ RX 9xxx sorozat
- Autós kamerák
- Milyen házat vegyek?
- Vezetékes FÜLhallgatók
- Vezeték nélküli fejhallgatók
- M.2-es SSD-ből E1.S-est az Icy Box adapterével
- Effektíve TKL méretűek a Corsair legújabb, numerikus paddal ellátott klaviatúrái
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- OLED TV topic
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
argc, argv:
Vegyük azt, hogy a main függvényednek így néz ki a fejléce:
int main(int argc, char *argv[])
{
/* blabla */
}Itt az argc azt határozza meg, hány paramétered van+1. Azért +1, mert ebben a számban benne van magának a futtatandó programodnak a neve is (pl. akarmi.exe a futtatandó fájlod; de NEM maga a programnév, mint string van benne, hanem csak plusz egy "paraméter").
Az argv pedig sztringre mutató mutatók tömbje, azért char * argv[] (ez ekvivalens ezzel: char **argv); ez megmondja, hány string szerepel a parancssorban. A 0. index maga a program neve (a korábban említett akarmi.exe), mint string, az 1. index (és az azt követő indexek) pedig az(ok), ami(ke)t a fájl neve mögé írtál: akarmi.exe parameter1 (parameter2 parameter3...)Eszerint ellenőrizgethetsz: pl. azt is csekkolhatod ilyen módon, hogy a program neve után pontosan annyi paramétert adtak-e meg, mint amennyit elvártál, és/vagy a paraméter(ek) neve megegyezik-e valamilyen értékkel, amitől függően hajtasz végre mondjuk egy műveletet, stb...
A Te esetedben ("min és max érték között kikeresi és listázza a primszámokat") pl. így hívod meg a programot a parancssorból:
akarmi.exe 10 50Még az elején include-old az stdlib-et, és akkor átalakíthatod a paraméterként kapott sztringet egész számmá az atoi függvénnyel:
#include <stdlib.h>Végezz egy ellenőrzést, hogy a paraméterek száma nem kisebb-e a szükségesnél (kell a min és a max is):
if(argc<3)
/* hibaüzenetek, kilépés hibával */;A korábban int-ként deklarált min és max változóknak pedig add át a megfelelő értékeket:
min = atoi(argv[1]);
max = atoi(argv[2]);Ezt követően pedig végezd el a prímtesztelést.
Összefoglalva (a konkrét kiegészítés már a Te dolgod):
#include <stdio.h>
#include <stdlib.h>int main(int argc, char *argv[])
{
int min, max;
if(argc<3)
/* hibaüzenetek, kilépés hibával */;
min = atoi(argv[1]);
max = atoi(argv[2]);
/* ide jöhet a prímtesztelés */
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- OFF TOPIC 44 - Te mondd, hogy offtopic, a te hangod mélyebb!
- Víz- gáz- és fűtésszerelés
- Futás, futópályák
- Parfüm topik
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- AMD Navi Radeon™ RX 9xxx sorozat
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- Abarth, Alfa Romeo, Fiat, Lancia topik
- sziku69: Fűzzük össze a szavakat :)
- További aktív témák...
- Sapphire Pulse RX 6600 XT - eladó!
- ÚJ DELL XPS 14 9440 PROFI Laptop, -70% 14,5" Ultra 7 155H 12Mag 16/512 FHD+ 120Hz /Millió! Ft/
- Vadonat új garanciás laptopok hihetetlen áron! Szeptember Októberi lista! Razer blade zephyrus
- ÚJ HP ENVY x360 Érintős Hajtogatós Laptop Tab -30% 15,6" AMD RYZEN 7 7730U 8Mag 16/1TB FHD
- 512MB (3db) - 1GB (16db) - 2GB (21db) DDR2 RAM-ok (és RAM-Kitek)
- Új és újszerű 15"-16" Gamer, irodai, üzleti, készülékek nagyon kedvező alkalmi áron Garanciával!
- Apple iPhone 15 128 GB Kék 12 hónap Garancia Beszámítás Házhozszállítás
- GYÖNYÖRŰ iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3315, 90% Akkumulátor
- HIBÁTLAN iPhone 11 Pro 256GB Midnight Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3546
- GYÖNYÖRŰ iPhone 12 mini 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS2955
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest