C语言如何把一个字符串转换成数字?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言如何把一个字符串转换成数字?相关的知识,希望对你有一定的参考价值。
参考技术A C语言有atoi、atol、atof等库函数,可分别把ASCII编码的字符串转化为int、long、float类型的数字。\\x0d\\x0a头文件:stdlib.h\\x0d\\x0a函数原型:int atoi(const char* nptr);\\x0d\\x0a(另外两个类似)\\x0d\\x0a\\x0d\\x0a举个例子:\\x0d\\x0achar *str="123";\\x0d\\x0aint num=atoi(str);\\x0d\\x0a执行后,num的值被初始化为123在SQL语句里面如何将字符型转换成数字型?
参考技术A将字符的数字转成数字,比如'0'转成0可以直接用加法来实现;
例如:将pony表中的d 进行排序,可d的定义为varchar,可以这样解决;
select * from pony order by (d+0);
在进行ifnull处理时,比如 ifnull(a/b,'0') 这样就会导致 a/b成了字符串,因此需要把'0'改成0,即可解决此困扰;
比较数字和varchar时,比如a=11,b="11ddddd";
则 select 11="11ddddd"相等;
若绝对比较可以这样:
select binary 11 =binary "11ddddd";
字符集转换 : CONVERT(xxx USING gb2312);
类型转换和SQL Server一样,就是类型参数有点点不同 : CAST(xxx AS 类型),CONVERT(xxx,类型);
类型必须用下列的类型:BINARY、CHAR()、DATE、TIME、DATETIME、DECIMAL、SIGNED、UNSIGNED。
以上是关于C语言如何把一个字符串转换成数字?的主要内容,如果未能解决你的问题,请参考以下文章