void main (int argc, char* argv[]) {
FILE *inf, *outf;
if (argv[1][0] == 'e'){
inf = fopen (argv[2], "rb");
outf = fopen (argv[3], "wb");
DataFile.SetFile (inf);
CompressedFile.SetFile (outf);
encode ();
fclose (inf);
fclose (outf);
}
else if (argv[1][0] == 'd'){
inf = fopen (argv[2], "rb");
outf = fopen (argv[3], "wb");
CompressedFile.SetFile (inf);
DataFile.SetFile (outf);
decode ();
fclose (inf);
fclose (outf);
}
}
Можете, пожалуйста, объяснить, как пользоваться этой программой через командную строку.
int argc, char* argv[]
argc
- количество аргументов,
argv
- массив строк-аргументов
Запуская программу из командной строки, вы пишете:
в windows: program.exe
в linux: ./program
Здесь program.exe
или program
есть первый аргумент командной строки (argv[0]), то есть это всегда имя запускаемой программы. Всё, что вы пишете далее через пробел - остальные аргументы.
В программе вы можете их использовать, как вам необходимо.
program <option> <input file> <output file>
options:
e - encode
d - decode
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Вроде всегда так класс разделял в h-хедерные файлы и cpp-файлы с кодом, но в этот раз что-то пошло не так :( Пишет Unresolved external blablablaobj
и снова доброго вечера всем форумчанамВозникла проблема с переопределением объектов std::function<void()> и будто вещь это не особо сложная, а разобраться...