关于C/C++中main函数参数的学习
因为面对对象作业(2018.5.21)的要求,去学习了C/C++中main函数参数的意义,以及一些简单的使用(从命令行指令的接受),不给予赘述。(仅为个人拙见,还望看官指正)
首先,带有参数的main
函数如下表示:
int main( int argc, char* argv[] )
{
do something;
return 0;
}
其中,argc
为从命令行中接受的指令个数,argv
为从命令行中接受的指令内容。通俗地理解,argc
就是在命令行中敲了几个字符串,argv
便是这几个字符串的值(argv[i]
,i = 0,1,2,3……)。于是乎,bonus的一些问题我得到了解决(参数不够,参数错误)。对于参数解释,个人认为已经足够,那么如何使用所接受到的参数便成为接下来要研究的问题。(笔者以freopen
为例,因为作业要求从命令行操作,而搜索出来的博客并没有我想要的内容,在我粗略浏览过后,决定自己动手)
首先观察一下freopen
语句freopen( "input/output.txt", "r"/"w", stdin/stdout )
,不难看出,freopen
的第一个参数是一个字符串,那么freopen
的参数便可以理解成:string, "r", stdin。而上文中我们提及的argv
,就是接受命令行的指令的字符串数组,那么freopen
语句便可以写作freopen( argv[i], "r"/"w", stdin/stdout )
, i = 0,1,2,3……,那么我们就可以方便的控制输入的文件名和输出的文件名。
其次,C++对于判断文件存在与否,我通过搜索学习到了ifstream fin(str)
(#include <fstream>
),之后加之判断:若(!fin)
为真,则名为str(str是一个字符串)的文件不存在,于是乎,bonus的一些问题又解决了(参数不规范)。而对于C而言,我记得可以通过File*
来判断是否存在所索取文件。
小结:当网上的一些东西有时候并不能解决我们的需求,并不代表我们不能学习,更不代表我们无能为力,通过对企图学习的东西先有一个大体认知,再观察我们需要改变的东西,结合我们的经验,其实很多的问题都可以得到解决,这就是我这次对于main函数带参的学习的一个小收获。
关于C/C++中main函数参数的学习的更多相关文章
- c/c++中main函数参数讲解
参考地址: http://blog.csdn.net/cnctloveyu/article/details/3905720 我们经常用的main函数都是不带参数的.因此main 后的括号都是空括号.实 ...
- Java中main函数参数String args[] 和 String[] args 区别
其实没什么区别的:当初我也是这样的疑问,呵呵:非要说区别就看下面:执行效果上没有不同, 但在语法意义上略有不同. 比如, String与String[], 前者叫字符串类型而后者叫字符串数组类型. S ...
- .NET中Main函数使用小技巧
摘要:任何语言开发出来的程序,都会有一个程序入口函数,可能每个语言所使用的程序入口函数名称不一样,但是它们的作用都是一样的,都是被操作系统去调用.那么本文主要总结.NET中的程序入口函数Main使用的 ...
- main函数参数解析
int argc,char *argv agrc表示参数的个数 argv储存参数 这个函数的意思是逐一输出参数 实际上,main函数也可以带参数.带参数main函数的定义格式如下:void main( ...
- 性能测试分享: Jmeter的源码分析main函数参数
性能测试分享: Jmeter的源码分析main函数参数 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大 ...
- eclipse 中main()函数中的String[] args如何使用?通过String[] args验证账号密码的登录类?静态的主方法怎样才能调用非static的方法——通过生成对象?在类中制作一个方法——能够修改对象的属性值?
eclipse 中main()函数中的String[] args如何使用? 右击你的项目,选择run as中选择 run configuration,选择arguments总的program argu ...
- C++中main函数的返回值一定要是int
因为大学上课时候,经常是在主函数中做处理,直接用cout语句输出到显示设备,所以一直在用void main(). 直到后面具体编程的时候,才发现void main()这种用法是按 C89(C语言的早期 ...
- Main函数参数argc,argv说明
C/C++语言中的main函数,经常带有参数argc,argv,如下: int main(int argc, char** argv) int main(int argc, char* argv[]) ...
- 在C++工程中main函数之前跑代码的廉价方法(使用全局变量和全局函数)
// test.cpp : Defines the entry point for the console application. // #include "stdafx.h" ...
随机推荐
- android应用安全——通信安全(android https)
这里先引入两篇文章: 1.Android网络编程——https 不验证证书方式(信任所有证书) 2.Android: Trusting SSL certificates android中实现Https ...
- coreldraw X6 cdrX6下载激活工具
coreldraw X6 cdrX6下载激活工具 百度网盘 CDRX6下载 激活教程什么的请参考 低吟浅唱 博客
- Hessian接口测试
- 用Python xlwt建立excel表格
1.下载xlwt的Python库 (This is a library for developers to use to generate spreadsheet files compatible w ...
- 使用NSKeyedArichiver进行归档、NSKeyedUnarchiver进行解档
一.使用archiveRootObject进行简单的归档 使用NSKeyedArichiver进行归档.NSKeyedUnarchiver进行接档,这种方式会在写入.读出数据之前对数据进行序列化.反序 ...
- ArcPy开发IDE
最近时不时的使用Arcpy的脚本,这就不可避免的面临Python IDE的选择.可以用来Python开发的IDE非常的多,像Eclipse等等.尝试了一些IDE后,逐渐的固定使用下面两款. 一.Pyt ...
- Java 面向对象编程介绍
面向对象的概念 类与对象的关系 封装 面向对象 面向过程: 强调的是过程(动作) 面向对象: 强调的是对象(实体) 面向对象的特点 面向对象就是一种常见的思想,符合人们的思考习惯; 面向对象的出现,将 ...
- 转!!SQL左右连接中的on and和on where的区别
原博文地址:http://blog.csdn.net/xingzhemoluo/article/details/39677891 原先一直对SQL左右连接中的on and和on where的区别不是太 ...
- python用whl文件安装包
直接用pip安装包的时候有时会因为许多奇怪的原因安装失败,这时就需要祭出大杀器——whl文件 python3 -m pip install whl文件路径名 whl库:https://www.lfd. ...
- 采购订单打印并预览PDF
*&---------------------------------------------------------------------* *& Report Z01MMF019 ...