Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- Toomy: FOXPOST: régen jó volt, de már jobban jársz, ha elfelejted
- koxx: Bloons TD5 - Tower Defense játék
- bitpork: Ha Isten létezik...
- sziku69: Fűzzük össze a szavakat :)
- sh4d0w: Van-e még?
- potyautas: Vizsga
Ú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
Hirdetés
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Mesterséges intelligencia topik
- Kávé kezdőknek - amatőr koffeinisták anonim klubja
- Jövedelem
- Path of Exile (ARPG)
- Háztartási gépek
- Bambu Lab 3D nyomtatók
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Vicces képek
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- További aktív témák...
- PNY GeForce RTX 5060 Ti 16GB EPIC-X RGB Overclocked, Triple Fan
- újszerű iPhone 16 Pro Max 256GB white titanium fehér titán független Apple 2 év garancia ajándék tok
- szinte új 13 hüvelykes MacBook Air M4 512GB SSD midnight éjfekete Apple 3 év garancia
- új aktiválatlan Apple Watch SE 3 GPS 40mm csillagfény alumíniumtok Apple 1 év garancia
- újszerű iPhone Air 256GB sky blue égkék független Apple 1 év garancia
- GYÖNYÖRŰ iPhone 13 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3576
- HIBÁTLAN iPhone 12 mini 64GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3481
- Dell XPS 13 9300 i7-1065G7 8GB 1000GB FHD+ 500nit! 1 év garancia
- Eladó használt BenQ SP840 FULL HD projektor / 12 hónap működési jótállás
- darkFlash Shadow Pro
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs

