2 qq 34174865 qq_34174865 于 2016.03.05 02:39 提问

我想做一个类似于记事本的软件,但是该怎么办才能通过双击将文件名传到主函数?

我想要做一个类似于记事本的软件,先做到能写入,做到双击可以打开文件xxx.lg对其写入数据。但是现在在dos命令符中能运行,双击却打不开(我已配置好注册表),求大神帮助解决
/*实现记事本书写的功能,并进行简单的加密*/

#include

#include
#include
#include
using namespace std;
int main(int argc,char argv[])
{
string str;
char
tmp = NULL;
fstream lg(argv[0], ios::out | ios::binary | ios::trunc);//打开文件argv【0】,及传入的第一个参数
if (!lg.is_open())
cout << "open failed" << endl;
getline(cin, str);
while (str != "end")
{
str = str + '\n';
tmp = new char[str.length() + 1];
strcpy(tmp, str.c_str());
for (unsigned int i = 0; i < strlen(tmp); i++)
tmp[i] += 'z';
lg.write(tmp, str.length());
delete[]tmp;
tmp = NULL;
getline(cin, str);

}
lg.close();
return 0;
}

2个回答

caozhy
caozhy   Ds   Rxr 2016.03.05 03:03

点右键,选择打开方式,选择你的程序,勾选总是用这个程序打开,看看是否能解决。

caozhy
caozhy 另外argv[0]你得到的是程序文件名而不是参数
接近 2 年之前 回复
caozhy
caozhy   Ds   Rxr 2016.03.05 06:14
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!