int main с два аргумента : int main(int argc,char *argv[])
При компилиране на кода ми излиза винаги argc==1 и следователно още от първата проверка при IF и изпълнението прнезнам дали е правилно ,не разбирам дори как да добавям символи.
#include<iostream>
#include<fstream>
using namespace std;
int main(int argc,char *argv{}){
if(argc!=2){
cout<<"Usage: WRITE<filename>\n";
return 1;
}
ofstream out(argv[1]);
if(!out){
cout<<"Cannot open output file.\n";
return 1;
}
char str[80];
cout<<"Write string to disk, '$' to stop\n";
do{
cout<<": ";
cin>>str;
cout<<str<<endl;
}while(*str!='$');
out.close();
return 0;
}
Благодаря, а как да продължа да въвеждам параметри в даденият случай.
Доколкото виждам, името на програмата ти е write и трябва да я стартираш така: write filename. Ако я стартираш без параметри, по подразбиране argc е 1 и това е името на програмата. На теб ти трябва да укажеш и втори параметър - името на файла в който ще записваш текст. Само че така както си го написал, май няма да се получи, защото ще извежда всичко на екрана със cout.