命令行参数

Reykjav�k 2020-02-27 06:55:15
生成一个程序如my.exe,执行 my.exe 12 zhangsan回车
输出12行字符串,每行都是字符串张三。 请问代码是什么,如何在dos界面输入my.exe 12 zhangsan 出来这个结果
...全文
20 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
寻开心 2020-02-27
  • 打赏
  • 举报
回复
#include <stdio.h> #include <string.h> int main(int argc, char ** argv ) { // argc 就是参数的个数 // argv[0]是exe文件本身 my.exe // argv[1]就是第一个参数 12 // argv[2] 就是张三 int row; sscanf(argv[1], "%d", &row); for ( int i =0; i<row; i++ ) printf("%s\n", argv[2]); return 0; }
三号室 2020-02-27
  • 打赏
  • 举报
回复
以下是参考程序

#include <iostream>
#include<string.h>
using namespace std;
//字符串转换成数字 
int stringToInt(char *s){
	int len = strlen(s);
	int ans = 0;
	for(int i = 0;i < len;++i){
		if(s[i]<'0'||s[i]>'9')break;
		ans*=10;
		ans+=(s[i]-'0');
	}
	return ans;
}
//argc为接收到的参数个数+1,argv为接收到的参数数组 
int main(int argc, char* argv[])
{
    int num = 0;
    //参数个数不为2时,报错 
	if(argc!=3){
    	cout<<"调用参数错误"<<endl; 
    	return 0;
	} 
	//获取循环次数 
	num = stringToInt(argv[1]);
	//输出结果 
	for(int i = 0;i<num;++i){
		cout<<argv[2]<<endl;
	}
	return 0;
}

64,661

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧