main中的两个参数和引出的一个问题。
来源:互联网 发布:苹果文字识别软件 编辑:程序博客网 时间:2024/04/28 08:08
好像很忙最近,白天上班晚上看书日子是不好过。
好多东西想去学还是感觉时间不够用,最近一直再看两本书感觉很有用,给大家分享一下,
以此来对本文开题。
一本是《大话数据结构》,推荐理由:内容朴实,易懂,图多,适合我这种算法类的菜鸟。而且有历程看完可以事件,去改一些例子,然后再去实现其他功能,是一本很好的学习教程,也能提高学习的主管能动性。。。
另一本是《c缺陷与陷阱》,看着这本书回忆着几个月前看的《c专家编程》思路涌现,对c的理解更上一层楼。绝对都是必看级别的。。。只叹大学不懂事用错书了。。。
好了言归正传,开始本文内容。。。
因为平时工作会用到dos和linux,所以带参数函数就用的比较多。
比如,fdisk -l 列出硬盘信息,wc -l列出代码行数等等 这些都是带参数函数的例子。
为什么要带参数?
我认为是:为了丰富程序内容的可选择性,实现多功能于一体的函数。
下面看下门函数的原型:
[code=C/C++]
int main(int argc,char** argv)
{
主函数内容
}
[/code]
两个主要的参数:
argc:函数参数的个数,类型是int。例如:fdisk -l 带了一个参数就说明此时的argc 为2,因为fdisk是一个 -l又是一个参数。
char** argv等价于 char* argv[] :argv是一个指针数组。
那么他到底指向的是什么元素?
请看下面的例子
[code=C/C++]
//做一个程序实现在console端输入 hello -h,让他输出helloworld
1 #include <stdio.h>
2 int main(int argc,char ** argv)
3 {
4 if(argc!=2)
5 printf("Error Parameters\n");
6
7 else{
8 if(strcmp(argv[1],"-h")==0)
9 {
10 printf("hello,world\n");
11 }
12 else
13 {
14 printf("No this function\n");
15 }
16 }
17 return 0;
18 }
[/code]
好多东西想去学还是感觉时间不够用,最近一直再看两本书感觉很有用,给大家分享一下,
以此来对本文开题。
一本是《大话数据结构》,推荐理由:内容朴实,易懂,图多,适合我这种算法类的菜鸟。而且有历程看完可以事件,去改一些例子,然后再去实现其他功能,是一本很好的学习教程,也能提高学习的主管能动性。。。
另一本是《c缺陷与陷阱》,看着这本书回忆着几个月前看的《c专家编程》思路涌现,对c的理解更上一层楼。绝对都是必看级别的。。。只叹大学不懂事用错书了。。。
好了言归正传,开始本文内容。。。
因为平时工作会用到dos和linux,所以带参数函数就用的比较多。
比如,fdisk -l 列出硬盘信息,wc -l列出代码行数等等 这些都是带参数函数的例子。
为什么要带参数?
我认为是:为了丰富程序内容的可选择性,实现多功能于一体的函数。
下面看下门函数的原型:
[code=C/C++]
int main(int argc,char** argv)
{
主函数内容
}
[/code]
两个主要的参数:
argc:函数参数的个数,类型是int。例如:fdisk -l 带了一个参数就说明此时的argc 为2,因为fdisk是一个 -l又是一个参数。
char** argv等价于 char* argv[] :argv是一个指针数组。
那么他到底指向的是什么元素?
请看下面的例子
[code=C/C++]
//做一个程序实现在console端输入 hello -h,让他输出helloworld
1 #include <stdio.h>
2 int main(int argc,char ** argv)
3 {
4 if(argc!=2)
5 printf("Error Parameters\n");
6
7 else{
8 if(strcmp(argv[1],"-h")==0)
9 {
10 printf("hello,world\n");
11 }
12 else
13 {
14 printf("No this function\n");
15 }
16 }
17 return 0;
18 }
[/code]
我们从console端输入的参数就存入了 argv[1]中吗?显然不是。
数组中的每一个元素都是指向char类型的指针。argv[1]就存储着指向这个char字符串的指针。
再看,strcmp:
[code=C/C++]
#include <string.h>
int strcmp(const char *s1, const char *s2);
两个参数都是指针。
- main中的两个参数和引出的一个问题。
- 由 argv引出的main参数
- main函数中的两个参数
- main函数中的两个参数argc和argv
- PhotoCamera引出的一个问题
- 一个PATH引出的问题
- main函数的两个参数
- main函数的两个参数
- main函数的两个参数
- main函数的两个参数
- main 函数的两个参数
- main函数的两个参数
- main函数的两个参数
- main函数的两个参数
- main函数的两个参数
- main函数的两个参数
- Main函数的两个参数
- main函数的两个参数
- 查找两个已经排好序的数组的第k大的元素
- 单链表的逆置-C++实现
- photoshop分割保存精灵表图片
- mysql中字符集问题
- DIV常用样式汇总全集
- main中的两个参数和引出的一个问题。
- 使用django的用户帐号登录openfire
- 你能够写出完整的字符串拷贝函数吗?
- 产品经理新手指南
- Extjs-常用函数
- 微博接口访问权限
- 判断程序是有C编译器编译 还是由c++编译器编译
- 半年的工作总结
- UVa208