`
hgfghwq10
  • 浏览: 44294 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

常见的字符串和数的转换(C)

 
阅读更多

   1. 字符串转换为数字:头文件 #include  atof()将字符串转化为浮点数; //atof("1.2e4") 124000.000000 atoi()将字符串转化为整型数; atol()将字符串转化为长整型数; strtod()将字符串转化为浮点数; strtod(" 2.4124",&str) 2.412400 strtod("1000",NULL,2) 最后一位为进制 strtooul() 将字符串转化为无符号长整型; // unsigned long int strtoul(const char *nptr,char **endptr,int base); strtoul()会将参数nptr字符串根据参数base来转换成无符号的长整型数。参数base范围从2至36,或0。参数base代表采用的进制方式,如base值为10则采用10进制, 若base值为16则采用16进制数等。当base值为0时则是采用10进制做转换,但遇到如'0x'前置字符则会使用16进制做转换。一开始strtoul()会扫描参数nptr字符串,跳过 前面的空格字符串,直到遇上数字或正负符号才开始做转换,再遇到非数字或字符串结束时('')结束转换,并将结果返回。若参数endptr不为NULL,则会将遇到不合条 件而终止的nptr中的字符指针由endptr返回。 前面出现字母就为0 strtoul("0xa",&str,16) //16 strtoul(" a",&str,16) //10 strtoul(" 152",&str,10) //152 toascii() //将整数转换为ascii码 int a=49; printf("%d %c",a,toascii(a)); toupper()将小写字母转换成大写字母; tolower()将大写字母转换成小写字母; eg: char str[10]="hello"; for(int i=0;str[i]!='\0';i++) str[i]=toupper(str[i]); printf("%s",str); 2. 整数转化为字符串 itoa(int value,char *string,int radix) 把value的值转换为以NULL结束的字符串,并把结果存在string中。radix是转换的基数值,在2到36之间。分配给string的空间必须可容纳 返回的所有字节(最多33字节)。 itoa(100,str,10); printf("%s\n",str); 3. 进制转换 16进制字符串转换为10进制: sscanf("3e8","%x",&num); //将字符串直接以16进制的格式sscanf进来,num = 1000 转换小函数10进制转换为16进制字符串 注意p是逆序的 char *IntTox(int num) { int flag; char *str = new char[10]; memset(str,0,10); char *p=str; while(num!=0) { flag = num%16; if(flag>=0&&flag字符串转换为有符号整数实现 long Trim::StrToNum1(char *str) { int flag=1; long num=0; for(int i=0;str[i]!='\0';i++) { if(str[i]=='+'||str[i]=='-') { if(i==0) { if(str[i]=='+') flag=1; else flag=-1; } else { printf("字符串错误\n"); exit(0); } } else if(str[i]>'0'&&str[i]<='9') { num=num*10+str[i]-'0'; } } if(flag==0) return num; else return (-num); }
分享到:
评论

相关推荐

    字符串和数组列表ADT

    字符串和数组列表ADT wordperline在标准输出中一行一行地打印指定文件中的每个单词; 如果未指定文件,则处理标准输入。 默认情况下,单词之间用空格隔开。 wordperline支持以下选项:-l将大写字符转换为小写。 -p...

    常见面试需要实现的函数std_func.c

    * 常见的字符串函数实现: * strlen * strcpy strncpy * strcmp strncmp * strcat strncat * strstr * * 内存操作: * memset、memcmp、memcpy、memmove * * 字符串和数组转换: * atoi itoa *

    明解C语言(第3版)入门篇.[日]柴田望洋(带详细书签).pdf 【半高清】

    格式化字符串和转换说明 6 符号的称呼 8 无格式化输出 8 字符串常量 10 转义字符 10 1-2 变量 11 变量和声明 11 赋值 12 初始化 13 声明时初始化 14 初始化和赋值 14 1-3 输入和显示 16 通过键盘进行...

    整数与字符串转换的C实现

    即将就业,也复习复习相关的知识,看了看嵌入式C的笔试题,整体感觉考试题目还是蛮有意思的,考点都比较重要,而且比较细,主要还是设计到一些指针和数组已经函数指针等基本的概念。

    queryparams:一个直接的 ruby​​ gem,用于将嵌套和混合的哈希和数组转换为 http 查询字符串

    一个简单的 gem,可以按照 Rails 和 Sinatra 的查询字符串约定将 ruby​​ 哈希和数组转换为 http 查询字符串。 它支持散列、数组、嵌套散列和散列数组及其所有组合。 例如: QueryParams.encode({a: 1, b: "c"}) ...

    C语言FAQ 常见问题列表

    previous up contents next C 语言常见问题集 原著:Steve Summit 翻译:朱群英, 孙 云 修订版 0.9.4, 2005年6月23日... o 8.6 我有个函数, 本该返回一个字符串, 但当它返回调用者的时候, 返回串却是垃圾信息。 ...

    C 语言编程常见问题解答.chm

    9.9 字符串和数组有什么不同? 第10章 位(bit)和字节(byte) 10.1 用什么方法存储标志(flag)效率最高? 10.2 什么是“位屏蔽(bit masking)”? 10.3 位域(bit fields)是可移植的吗? 10.4 移位和乘以2这两...

    指针数组和数组指针的区别.doc

     char *a[]定义了一个指针数组,注意不是char[], char[]是不能同时初始化为三个字符的,定义以后的a[]其实内部有三个内存位置,分别存储了abc\0,cde\0,fgh\0,三个字符串的起始地址,而这三个位置的内存地址却不是这三个...

    C语言程序设计标准教程

    因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。  本章介绍数值数组和字符数组,其余的在以后各章陆续介绍。数组类型说明 在C语言中使用数组必须先进行类型说明。 ...

    新概念C语言.李一波(带详细书签).pdf

    11.8 字符串的指针和指向字符串的指针变量 120 11.8.1 字符串的表示形式 120 11.8.2 字符串指针做函数参数 123 11.8.3 对使用字符指针变量和字符数组的讨论 125 11.9 用结构体变量和指向结构体的指针做函数参数...

    UNIX环境下C语言任意长度整数加法运算

    用字符串表示整数,需要多长可以自己定义,函数add模拟手工运算,第一、二个参数为加数和被加数,第三个参数存放和数。主函数main给出了add的用法,计算并输出斐波那契数列的前400项。本文件在LINUX环境下运行正确...

    C# 程序设计手册(WORD)

    在十六进制字符串和数字型别间转换 32 数组 34 将数组当做对象 35 一维数组 36 多维数组 36 不规则数组 37 在数组上使用 foreach 39 传递数组当做参数 40 使用 ref 和 out 传递数组 42 隐含型别数组 44 字符串 45 ...

    你必须知道的495个C语言问题

    6.3 那么,在C语言中“指针和数组等价”到底是什么意思? 6.4 既然它们这么不同,那为什么作为函数形参的数组和指针声明可以互换呢? 数组不能被赋值 6.5 为什么不能这样向数组赋值?externchar*getpass();...

    《你必须知道的495个C语言问题》

    书中列出了C用户经常问的400多个经典问题,涵盖了初始化、数组、指针、字符串、内存分配、库函数、C预处理器等各个方面的主题,并分别给出了解答,而且结合代码示例阐明要点。 《你必须知道的495个C语言问题》结构...

    二级c未来教育题库破解及资源

    2.一维、二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变量的 定义。通过指针引用以上各类型数据。 3.用指针作函数参数。 4.返回地址值的函数。 5.指针数组,指向指针的指针。 ...

    09年二级C语言考试大纲

    二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变量的定义。通过指针引用以上各类型数据。 3.用指针作函数参数。 4.返回地址值的函数。 5.指针数组,指向指针的指针。 十、结构体...

    C语言编程要点

    9.9. 字符串和数组有什么不同? 145 第10章 位(bit)和字节(byte) 147 10.1. 用什么方法存储标志(flag)效率最高? 147 10.2. 什么是“位屏蔽(bit masking)”? 148 10.3. 位域(bit fields)是可移植的吗? 150 10.4. 移位...

    Objective-C2.0程序设计

    第15章 数字、字符串和集合 15.1 数字对象 15.2 字符串对象 15.2.1 NSLog函数 15.2.2 可变对象与不可变对象 15.2.3 可变字符串 15.2.4 所有对象到哪里去了 15.3 数组对象 15.4 同步AddressCard方法 15.4.1 快速枚举 ...

Global site tag (gtag.js) - Google Analytics