VC++ 6.0 关于字符串处理的问题

VC++ 6.0 关于字符串处理的问题,第1张

呵呵有库函数

-----------------------------------------

函数名称: atoi

函数原型: int atoi( const char string );

函数功能: 把一个字符串转换为integer型

所属文件: <stdlibh>

-----------------------------------------

int a=atoi("21");

如果数字是一个字符,减去'0'即可

int b='2'-'0';

C++处理字符串不再用字符数组的老方法了是用string类

string s="Hello!";

string s1;

s1="Hello";

由于string类对象长度可随字符串长度变化,所以比字符数组灵活

当然取出一个字符string类也支持下标法

s[0]='H';

s[1]='e';

方便呀

atoi

C语言库函数名:

atoi

能:

把字符串转换成整型数

函数说明:

atoi()会扫描参数nptr字符串,检测到第一个数字或正负符号时开始做类型转换,之后检测到非数字或结束符

\0

时停止转换,返回整型数。

原型:

int

atoi(const

char

nptr);

你传的

参数是

int

型的

还有

member[i]str+1;

字符串

整型

怎么加

?????

C程序总是从mian函数开始执行的。mian函数的原型是:

int main(int argc,char argv[]);1

其中argc是命令行参数的个数,argv是命令行各个参数的指针,传入的参数类型是char字符串。

当内核执行C程序时 ,在调用main前,调用一个特殊的启动例程,可执行文件将此启动例程指定为程序的起始地址,这是由连接编辑器决定,而连接编辑器是由C编译器调用。启动例程从内核取得命令行参数和环境变量,然后按上述方式为调用main函数作出安排。

下面举个例子说明如何使用main函数的输入参数。

#include<stdioh>#include<stdlibh>int num;int main(int argc,char argv[])

{ for(int i = 0; i < argc ;i++)

{ printf("argv[%d]:%s\r\n",i,argv[i]);

} return 1;

} 12345678910111213

编译此程序 ,并在shell中运行。此处将源文件命名为mainc且编译生成的 执行文件为main

执行程序:

/main data1 data2 data3

输出:

argv[0] :/main

argv[1] :data1argv[2] :data2argv[2] :data31234567

可以看出argv[0]为执行 程序的命令/main

假如想将输入的数值转换为数值类型变量,比如

/main 1234

可调用stdlib头文件中的atoi函数

num = atoi(argv[1]); //num = 1234;1

函数名称: atoi

函数原型: int atoi(char str)

函数功能: 将字符串转换成一个整数值

函数返回: 转换后的数值

参数说明: str-待转换为整型数的字符串

ISOC 和POSX都要求argv[argc]为一个空指针,因此可将上述处理参数的循环更改为;

for (i = 0;argv != null,i++)

{

}

利用函数的该特性,便可以实现各个命令的编写。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/11680893.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存