C语言(利用函数将字符串转换为数字和数子转换字符串)

news2024/10/6 12:29:43

目录

1.atoi(字符串转换为int类型)

2.atof(字符串转换为float类型)

3.atol(字符串转换为long类型)

4.strtol(字符串转换为long类型,但可以选择转换的进制,以及标记结束字符地址)

5.strtod(字符串转换为double类型,可以标记结束字符地址)

6.整数和浮点数转换为字符串

 输入一个数字字符将其转换为对应具体数据类型的数据。你或许想到利用类型转换,直接使用

int I = '3';

但我们看到这样的类型转换赋的值是51,这是因为字符'3'的ASCII码是51,这种情况我们可以通过直接减去48或者'\0'来显示正确的数,

演示代码:
#include <stdio.h>

#include <string.h>



int main()

{

int n = '3'-'0';

printf("n: %d", n);

return 0;

}

但这样存在很大的局限性。比如“89”呢?对于这样的数我们就需要特定的函数对其进行处理。这个时候你可以选择自己编写处理代码,也可以使用<stdlib.h>头文件提供的函数

1.atoi(字符串转换为int类型)

如果不是数字字母,返回0

如果有数字和字母,只显示出现字母前的数字

2.atof(字符串转换为float类型)

3.atol(字符串转换为long类型)

在long和int占用存储字节一样的系统中,效果都一样,根据具体情况自行使用

4.strtol(字符串转换为long类型,但可以选择转换的进制,以及标记结束字符地址)

strtol(转换字符串地址,记录结束地址指针,要转换的进制)

这里转换为16进制,所以end标记在G(16进制0~A~F)

5.strtod(字符串转换为double类型,可以标记结束字符地址)

strtol(转换字符串地址,记录结束地址指针)

6.整数和浮点数转换为字符串

如果想把整数和浮点数转换为字符串,虽然头文件提供

itoa()和ftoa()分别转换为整数和浮点数

itoa(数字,存储位置字符数组,要转换的进制)

ftoa(数字,存储位置字符数组)

不过itoa和ftoa已经不能用了。如果想使用这种功能可以使用sprintf(或者你自己写这种功能的函数,但完全没必要了),这个函数就和printf功能一样,只不过它会将原本打印在终端的字符串送入字符数组中。


好了朋友们我们今天的内容到这就结束了,今天的内容到这里就结束了,如果有啥不会的朋友记得论坛里面提问哈~

如果朋友你感觉文章的内容对你有帮助,可以点赞关注文章和专栏以及关注我哈,嘿嘿嘿我会定期更新文章的,谢谢朋友你的支持哈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/344080.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

项目进度经常超时怎么办?项目经理如何有效管理项

当项目延期&#xff0c;我们要先找根因&#xff0c;再根据根因制定具体针对性措施。如果是故障&#xff0c;第一时间是以修复问题为主&#xff0c;然后去找原因&#xff0c;最终给出对应的措施。 对于项目进度&#xff0c;那首先要去了解延期的原因&#xff0c;是计划制定的不…

vite 项目切换不同依赖项的分支,运行加载缓慢问题的解决方案(Pre-bundling dependencies)

前言 当我们在首次使用 yarn dev 命令启动 vite 时&#xff0c;或者 切换分支&#xff0c;依赖项发生变化时 会发现项目启动时相当的慢&#xff0c;大概要十几分钟&#xff0c;而且控制台终端打印了如下信息&#xff1a; Pre-bundling dependencies: this will be run only …

vivo官网App模块化开发方案-ModularDevTool

作者&#xff1a;vivo 互联网客户端团队- Wang Zhenyu 本文主要讲述了Android客户端模块化开发的痛点及解决方案&#xff0c;详细讲解了方案的实现思路和具体实现方法。 说明&#xff1a;本工具基于vivo互联网客户端团队内部开源的编译管理工具开发。 一、背景 现在客户端的业…

【Jqgrid分页勾选保存】三步实现表格分页勾选(取消勾选)保存(附源码)

目录1、创建临时存储数组&#xff0c;初始化赋值2、单行选中与取消&#xff0c;调整数组3、全选与取消全选&#xff0c;调整数组4、输出数组保存5、片尾彩蛋【写在前面】表格可以说是在我们的web页面中是最常见的&#xff0c;之前我们介绍过layui表格翻页勾选的实现过程&#x…

到2030年,边缘计算潜在市场将增长至4450亿美元!

国际电信咨询公司STL Partners近日出了一份边缘计算关键数据统计&#xff0c;重点介绍了九项边缘计算统计数据&#xff0c;边小缘着手翻译了一下这些数据&#xff0c;这些数据预测显示了边缘计算市场的增长潜力&#xff0c;以及边缘部署数量最多的垂直行业和地区。1.到2030年&a…

java Spring aop入门准备工作

首先 Spring 框架一般都是基于 Aspect]实现 AOP 操作 然后就会带出问题 什么是 Aspect 首先 Aspect并不属于Spring 他是一个单独的AOP框架 离开Spring他也能单独运行 但在Spring开发中 我们常用他来配合Spring完成AOP操作 所以说 我们是要 基于Aspect去配合Spring完成AOP操作…

压力应变电桥信号隔离放大变送器差分输入0-±10mV/0-±20mV转0-20mA/0-10v

概述&#xff1a;DIN11 IPO 压力应变桥信号处理系列隔离放大器是一种将差分输入信号隔离放大、转换成按比例输出的直流信号导轨安装变送模块。产品广泛应用在电力、远程监控、仪器仪表、医疗设备、工业自控等行业。此系列模块内部嵌入了一个高效微功率的电源&#xff0c;向输入…

ChatGPT入门案例|商务智能对话客服(二)

ChatGPT是人工智能研究实验室OpenAI新推出的一种人工智能技术驱动的自然语言处理工具&#xff0c;使用了Transformer神经网络架构&#xff0c;也是GPT-3.5架构&#xff0c;这是一种用于处理序列数据的模型&#xff0c;拥有语言理解和文本生成能力&#xff0c;尤其是它会通过连接…

day41【代码随想录】动态规划之01背包问题

文章目录前言 01背包一、二维dp数组01背包1.1 确定dp数组以及下标的含义1.2 确定递推公式1.3 初始化1.4 遍历顺序1.5推导dp数组1.6 完整代码二、一维dp数组01背包&#xff08;滚动数组&#xff09;2.1 确定dp数组以及下标的含义2.2 确定递推公式2.3 初始化2.4 遍历顺序&#xf…

移动应用开发环境搭建Andriod Studio

文章目录提示&#xff1a;虚拟化的开启零 java环境准备一 下载和安装Android Studio1.1 默认方式安装操作1.2 自定义安装方式1.3 StartService 失败问题解决二 第一个程序2.1 创建一个新项目2.2 下载和创建模拟器2.3 启动模拟器2.4 运行提示&#xff1a;虚拟化的开启 记得提前…

大神之路-起始篇 | 第17章.计算机科学导论之【计算理论】学习笔记

欢迎关注「全栈工程师修炼指南」公众号点击 &#x1f447; 下方卡片 即可关注我哟!设为「星标⭐」每天带你 基础入门 到 进阶实践 再到 放弃学习&#xff01;涉及 企业运维、网络安全、应用开发、物联网、人工智能、大数据 学习知识“ 花开堪折直须折&#xff0c;莫待无花空折…

2023年浙江水利水电施工安全员精选真题题库及答案

百分百题库提供水利水电施工安全员考试试题、水利水电施工安全员考试预测题、水利水电施工安全员考试真题、水利水电施工安全员证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 119.下列关于大模板按照的说法正确的是&#x…

#459 津津有味:北方人对饺子的痴迷可能是刻进骨子里的

点击文末“阅读原文”即可收听本期节目剪辑、音频 / 卷圈 编辑 / SandLiu 卷圈 监制 / 姝琦 文案 / 粒粒 产品统筹 / bobo 录音间 / 声湃轩活着不端饺子碗&#xff0c;哭天抹泪没人管。你一定见识过铺天盖地的对“北方人一过节就吃饺子”的调侃。但饺子就是很好吃这件事&am…

ARM uboot 源码分析4 -启动第二阶段

一、start_armboot 函数简介 1、一个很长的函数 (1) 这个函数在 uboot/lib_arm/board.c 的第 444 行开始到 908 行结束。 (2) 450 行还不是全部&#xff0c;因为里面还调用了别的函数。 (3)为什么这么长的函数&#xff0c;怎么不分成两三个函数&#xff1f;主要因为这个函数…

100种思维模型之非sr思维模型-012

什么是sr? sr是stimulus-response的缩写&#xff0c;意思是刺激反应。 那么非sr思维模型就是非刺激反应思维模型的意思。 今天我们来聊聊非sr思维模型——一个提醒我们思考&#xff0c;提醒我们任何时刻都有选择权的思维模型。 本文依然从三个方面进行介绍&#xff0c;何谓…

你是真的“C”——详解结构体知识点

你是真的“C”——详解结构体知识点&#x1f60e;前言&#x1f64c;什么是结构体&#xff1f;&#x1f64c;1. 结构体的声明&#x1f64c;1.1 结构的基础知识1.2 结构的声明1.3 结构成员的类型1.4 结构体变量的定义和初始化2. 结构体成员的访问&#x1f64c;3结构体传参&#x…

推荐领域新人必看书籍:《推荐系统实践》

这本书非常适合推荐领域的新手&#xff0c;因为这本书的主要目的更接近于科普&#xff0c;而不是描述具体的推荐算法。什么是推荐系统&#xff1f;如果有一位你喜欢的女士约你一起外出&#xff0c;肯定不需要别人推荐你是否赴约吧&#xff01;&#xff08;信息量太小则不需要被…

VS Code中的GIT操作

一、前言 我们在进行项目开发时都免不了与GIT打交道&#xff0c;但是面对各种的难记的GIT命令总是手足无措&#xff1b;还好编译器中内置了GIT的仓库的一系列操作&#xff0c;掌握了可视化的操作就不用担心记不住GIT命令符了。下面主要介绍VS Code中具体的操作&#xff1a; 二…

【安全】Nginx实现反向代理负载均衡

基础概念 什么是负载均衡&#xff1f; 负载均衡用于从“upstream”模块定义的后端服务器列表中选取一台服务器接受用户的请求&#xff1b;即把请求均匀的分摊给上游的应用服务器。最基本的配置方式便是轮询&#xff1a; 负载均衡策略 策略 轮询 根据请求顺序分配 weight …

【软件工程】COMP5241 SE课程笔记

Software EngineeringCourse1 IntroductionCloud Native AppsScheduleSoftware InstallProject Chaos ReportWhat is Software EngineeringHow to define a good AppsSteps of SoftwareCourse4本笔记记录始于2023年2月13日&#xff0c;为在读研究生期间COMP5241 SE课程笔记整合…