int main(int argc, char *argv[])的理解,运用其获取文件名
2014-11-24 11:00
295 查看
int main(int argc, char *argv[])
argc是命令行总的参数个数 ,记录了用户在运行程序的命令行中输入的参数的个数。
argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数命令行后面跟的用户输入的参数;arg[]指向的数组中至少有一个字符指针,即arg[0].它通常指向程序中的可执行文件的文件名。
在有些版本的编译器中还包括程序文件所在的路径。
例:
第一步 在vc中建立工程文件输入代码:
int main(int argc, char* argv[])
{
int i;
for (i = 0; i<argc; i++)
cout<<argv[i]<<endl;
cin>>i;
return 0;
}
第二步 设置命令行参数在vc种做法如下:
第三步 编译、链接、运行
输出如下图
此例中agrc的值即agrc[]的元素个数为4,
agrc[0] = this
agrc[1] = is
agrc[2] = a
agrc[3] = test
这里我们可以用来获取文件名
例如:
int main(int argc, char *argv[])
{
QString qs;
qs = TR(argv[0]);
qsAppFilePath = qs.toStdString();
qsAppFileDir = qsAppFilePath;
qsAppFileDir.cdup();
gsInfoFileDir = gsAppFileDir;
}
这样我们就获取到了文件所在的目录
argc是命令行总的参数个数 ,记录了用户在运行程序的命令行中输入的参数的个数。
argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数命令行后面跟的用户输入的参数;arg[]指向的数组中至少有一个字符指针,即arg[0].它通常指向程序中的可执行文件的文件名。
在有些版本的编译器中还包括程序文件所在的路径。
例:
第一步 在vc中建立工程文件输入代码:
int main(int argc, char* argv[])
{
int i;
for (i = 0; i<argc; i++)
cout<<argv[i]<<endl;
cin>>i;
return 0;
}
第二步 设置命令行参数在vc种做法如下:
菜单Project(项目)——Seting(设置),在右边Debug(调试)选项卡下的Program arguments(命令行中)填上你要设置的相应参数
此例中我输入的是: this is a test
如下图所示:
第三步 编译、链接、运行
输出如下图
此例中agrc的值即agrc[]的元素个数为4,
agrc[0] = this
agrc[1] = is
agrc[2] = a
agrc[3] = test
这里我们可以用来获取文件名
例如:
int main(int argc, char *argv[])
{
QString qs;
qs = TR(argv[0]);
qsAppFilePath = qs.toStdString();
qsAppFileDir = qsAppFilePath;
qsAppFileDir.cdup();
gsInfoFileDir = gsAppFileDir;
}
这样我们就获取到了文件所在的目录
相关文章推荐
- 对于C语言中int main(int argc,char **argv)的理解
- int main(int argc,char *argv[])该函数中int argc和argv[]两个参数的理解你懂多少?
- <2012 11 6> 调C记录 <int main(int argc,char **argv)中的“char **argv”怎么理解?>
- <C语言>带参数的主函数理解int main(int argc, char *argv[])
- 理解int main(int argc,char **argv)中的参数的意义
- 关于int main(int argc,char*argv[])的理解
- 理解 int main(int argc,char *argv[])
- int main(int argc, char* argv[])理解
- 怎么理解int main(int argc,char **argv)
- 如何理解:int main(int argc, char** argv)
- 关于int main(int argc,char *argv[])的问题
- 关于int main(int argc,char *argv[]) 是什么意思
- int main(int argc, char* argv[])
- int main(int argc,char* argv[])详解
- int main(int argc,char *argv[])的含义
- int main( int argc , char *argv[] , char *envp[] )
- int main(int argc,char* argv[])详解
- int main(int argc,char *argv[])中两个参数的说明
- int main(int argc,char *argv[])中两个参数的说明
- 理解 void main(int argc, char** argv)