- iPhone topik
- Yettel topik
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Jobb zajszűréssel és okos funkciókkal töltve megjelent az Apple AirPods Max 2
- Redmi Note 15 Pro 5G – a szokásosat?
- Nagy aksival és erős hardverrel megjött Magyarországra a Poco X8 Pro és Pro Max
- Milyen okostelefont vegyek?
- Kijelzőjén alig látható gyűrődéssel mutatkozott be az Oppo Find N6
- Vérnyomásfigyelést is ígér az Oppo Watch X3
- Honor Magic7 Pro - kifinomult, költséges képalkotás
Ú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!
- Ha az alaplapi hangchipnél jobbra váltanál, itt az új Sound Blaster hangkártya
- iPhone topik
- AMD vs. INTEL vs. NVIDIA
- Luck Dragon: Asszociációs játék. :)
- Yettel topik
- sziku69: Fűzzük össze a szavakat :)
- Elektromos autók - motorok
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Jobb zajszűréssel és okos funkciókkal töltve megjelent az Apple AirPods Max 2
- További aktív témák...
- HP EliteDesk 800 G1 TWR PC, i5-4690 CPU, 8 GB DDR3 RAM, Windows 11
- 700 helyett 500! 2029. Euronics gari! Lenovo Legion 5 Pro 16! Ryzen 9 / RTX 5060 / 32GB DDR5 / 1TB
- Apple iPhone 12 64GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy A12 64GB, Kártyafüggetlen, 1 Év Garanciával
- Xiaomi Redmi A5 64GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone i5 12400F 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Magyar Logitech G915 Billentyűzet lehet +33.000.- Ft ból
- Apple Mac Pro Workstation Dual Xeon,18GB RAM,WIFI,BT,Profi Munkaállomás és Szerver
- INTIMACY MEN SPORT 125 ml parfüm bontatlan, fóliás
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


