Miten saan vietyä muuttujia (alkuarvoja) käynnistettävään c-ohjelmaan? Esim. jos käynnistetään "ohjelma.exe" niminen ohjelma ja haluaisin käynnistää ohjelman seuraavanlaisella komennolla "ohjelma 5 6", joissa luvut 5 ja 6 ovat ohjelmalle annettavia alkuarvoja.
Main-funktiolle annetaan parametreinä muistaakseni int argc ja char *argv[] ja tuohon integeriin tulee parametrien määrä muistaakseni ja argv:iin itse parametrit.
Mutta eihän niiden välttämättä tarvitse olla juuri argc ja argv ;)
rndprogy kirjoitti:
Mutta eihän niiden välttämättä tarvitse olla juuri argc ja argv ;)
Jaa, tämä olikin uusi tieto ;) No enpähän ole noita koskaan tullut tarvinneeksi, vain Dev-c++:san templatetiedostosta jäänyt päähän nuo muuttujanimet... :P
// ohjelma.exe #include <iostream.h> #include <cstdio> int main(int argc, char *argv[]) // ja siinä se "tärkein" rivi { cout << endl << "Paina nappulaa" << endl; getchar(); for(int a = 0; a < argc; a++) { cout << "Arvo numero " << a << " on: " << argv[a] << endl; } cout << endl; getchar(); return 0; }
start.bat:
ohjelma.exe 10 20 30
laitat kummatkin samaan kansioon ja käynnistät start.bat:n
Aihe on jo aika vanha, joten et voi enää vastata siihen.