Linux下c++中的atoi、atol、atoll、atof函数调用实例
本文中调用的四个函数如下:
atoi函数:将字符串转化为int类型变量
atol函数:将字符串转化为long类型变量
atoll函数:将字符串转化为long long类型变量
atof函数:将字符串转化为double类型变量
这些函数的转化过程,都是将一个字符串的可读部分取到变量中
遇到不可读的部分,则直接终止读取
调用示例:
#include <stdio.h>
#include <stdlib.h>
#define Seperate(); printf("\n=============\n\n");
int main()
{
Seperate();
//atoi
printf("atoi: string to integer\n");
const char* s00 = "1234567890";
printf("%s -> %d\n", s00, atoi(&s00[0]));
const char* s01 = "123.4";
printf("%s -> %d\n", s01, atoi(&s01[0]));
const char* s02 = "xyz";
printf("%s -> %d\n", s02, atoi(&s02[0]));
const char* s03 = "1234xyz";
printf("%s -> %d\n", s03, atoi(&s03[0]));
Seperate();
//atol
printf("atol: string to long\n");
const char* s10 = "1234567890123";
printf("%s -> %ld\n", s10, atol(&s10[0]));
const char* s11 = "123.4";
printf("%s -> %ld\n", s11, atol(&s11[0]));
const char* s12 = "xyz";
printf("%s -> %ld\n", s12, atol(&s12[0]));
const char* s13 = "1234xyz";
printf("%s -> %ld\n", s13, atol(&s13[0]));
Seperate();
//atoll
printf("atoll: string to long long\n");
const char* s20 = "1234567890123";
printf("%s -> %lld\n", s20, atoll(&s20[0]));
const char* s21 = "123.4";
printf("%s -> %lld\n", s21, atoll(&s21[0]));
const char* s22 = "xyz";
printf("%s -> %lld\n", s22, atoll(&s22[0]));
const char* s23 = "1234xyz";
printf("%s -> %lld\n", s23, atoll(&s23[0]));
Seperate();
//atof
printf("atof: string to double\n");
const char* s30 = "1234567890";
printf("%s -> %lf\n", s30, atof(&s30[0]));
const char* s31 = "123.4";
printf("%s -> %lf\n", s31, atof(&s31[0]));
const char* s32 = "xyz";
printf("%s -> %lf\n", s32, atof(&s32[0]));
const char* s33 = "1234xyz";
printf("%s -> %lf\n", s33, atof(&s33[0]));
Seperate();
return 0;
}
运行效果:

END
Linux下c++中的atoi、atol、atoll、atof函数调用实例的更多相关文章
- dos2unix,去掉Linux下文件中的^M
Windows系统下使用VS2010编写好的CPP文件,想放到Linux上进行编译.发现Linux上文件中的每行代码末尾都跟着^M这个符号. 为什么同一份文件在windows上和Linux上显示的不一 ...
- 将自己的SpringBoot应用打包发布到Linux下Docker中
目录 将自己的SpringBoot应用打包发布到Linux下Docker中 1. 环境介绍 2. 开始前的准备 2.1 开启docker远程连接 2.2 新建SpringBoot项目 3. 开始构建我 ...
- 详解Linux下iptables中的DNAT与SNAT设置(转)
详解Linux下iptables中的DNAT与SNAT设置 这篇文章主要介绍了Linux下iptables中的DNAT与SNAT设置,是Linux网络配置中的基础知识,需要的朋友可以参考下 原文连 ...
- Linux下Oracle中SqlPlus时上下左右键乱码问题的解决办法
window下的sqlplus可以通过箭头键,来回看历史命令,用起来非常的方便. 但是在Linux下,会出现各种乱码,非常不方便,如下图所示,每次打错一个字符就需要重新打一遍. 解决办法:rlwrap ...
- [转] linux下shell中使用上下键翻出历史命名时出现^[[A^[[A^[[A^[[B^[[B的问题解决,Linux使用退格键时出现^H解决方法
[From] https://www.zmrbk.com/post-2030.html https://blog.csdn.net/suifengshiyu/article/details/40952 ...
- 在Linux下使用sprintf代替atoi实现整型转化为char*
程序中需要用到将整型转化为char*类型,然后将两个char*类型的变量拼接.将整型转化为char*自然想到了itoa函数: 头文件:#include <stdio.h> char *it ...
- linux下 vi中[noeol]以及出现 feff 的问题
"uptime.py" [noeol] 69L, 2311C"system/uptime.py" 69L, 2312C 'noeol' 就是 'no end-o ...
- Linux 下shell中exec解析
exec和source都属于bash内部命令(builtins commands),在bash下输入man exec或man source可以查看所有的内部命令信息. bash shell ...
- Linux下多进程编程之exec函数语法及使用实例
exec函数族 1)exec函数族说明 fork()函数用于创建一个子进程,该子进程几乎复制了父进程的全部内容,但是,这个新创建的进程如何执行呢?exec函数族就提供了一个在进程中启动另一个程序执行的 ...
随机推荐
- .NET: 配置文件
VS里项目->添加新项->应用程序配置文件 <?xml version="1.0" encoding="utf-8" ?> <co ...
- oracle,sqlserver,mysql 命令行 开启、关闭所需要的服务
ORACLE需要开启的服务 需要启动的服务: 口令: 启动Oracle 11g服务: (下面的可以作为bat 脚本,直接运行便可以不用去自己去启动和关闭服务了.) @echo off @ EC ...
- 启动一个线程是用run()还是start()?
启动一个线程是用run()还是start()? 答:启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行.这并不意味着线程就会立即运行.run ...
- 使用console进行 性能测试 和 计算代码运行时间(转载)
本文转载自: 使用console进行 性能测试 和 计算代码运行时间
- 07---Net基础加强
第六节复习 泛型和非泛型集合的区别 通常情况下,建议您使用泛型集合,因为这样可以获得类型安全的直接优点而不需要从基集合类型派生并实现类型特定的成员.此外,如果集合元素为值类型,泛型集合类型的性能通常优 ...
- 夺命雷公狗ThinkPHP项目之----企业网站11之栏目的删除完成
我们删除要在分类模型中添加一个_before_delete的钩子函数,而且在删除一个分类时候,如果这个分类有子分类就不允许删除 model层代码如下所示: <?php namespace Adm ...
- session讲解(一)——登录网页练习
第一:登陆网页的表单页面login.php <body> <h1>登陆</h1> <form action="loginchuli.php" ...
- [OrangePi] Features (the features of Loboris's Images)
boot0_sdcard.fex, u-boot.fex and kernel (uImage) created from sources kernel built with many feature ...
- wireshark抓包
ip.addr==IP地址(192.168.1.100)&& http
- Angularjs之表单实例(三)
正确引用js css文件后可运行 <!DOCTYPE html> <html ng-app='myApp'> <head> <title>Bootstr ...