将字符数组中的字符转换为整型变量的数字 将字符串转换为数字
首先要保证字符数组或字符串中的数据是数字,这样才能转换。
检测字符数组或字符串中是否为数字的方法:
遍历字符数组或字符串,检测是否有非数字字符,若有则无法转换,若没有则可以进行转换。
将字符数组或字符串转换为数字的方法:
定义一个int型变量,初始化为0;
然后遍历字符数组或字符串,每遍历一个字符,将其与乘10后的int变量相加(x = x *10 + (str[i] - 48));//由于字符存储形式是按ASCLL码存储的,所以要减48(代表字符"0",数字0的ASCLL码为48)
最终得到转换好的int型变量。
C语言 字符数组和字符串
#include <iostream>
#include <cstring>
using namespace std;int str_to_int(char * str);///将字符数组中的字符转换为整型变量的数字int main()
{char str[10] = "1234";cout << str << endl;int y = str_to_int(str);cout << y << endl;return 0;
}int str_to_int(char * str)
{///将字符数组中的字符转换为整型变量的数字int y = 0;cout << "str的长度为:" << strlen(str) << endl;cout << "将strlen的返回值强制转换为int后的长度为" << (int)strlen(str) << endl;cout << str[0] << endl;for(int i = 0; i < (int)strlen(str); i++)///把强制转换去掉会发现提示warning///strlen返回值是无符号数,无法直接和int(有符号数)比较,无符号数可以转换为有符号数{y = y * 10 + (str[i] - 48);///此处要减48(ASCLL码中48为数字0)} ///字符串存储的是ASCLL码return y;
}
字符数组获取字符串长度用 strlen()函数
C++ string对象
#include <iostream>
#include <cstring>
#include <string>
using namespace std;int string_to_int(string str);///将string变量转换为整型变量的数字int main()
{string str = "1234";cout << str << endl;int y;y = string_to_int(str);cout << y << endl;return 0;
}
int string_to_int(string str)
{///将字符数组中的字符转换为整型变量的数字int y = 0;cout << "str的长度为:" << str.length() << endl;cout << "将length()的返回值强制转换为int后的长度为:" << (int)str.length() << endl;cout << str[0] << endl;///直接输出是字符形式,但是它存储的是ASCLL码for(int i = 0; i < (int)str.length(); i++)///把强制转换去掉会发现提示warning///length()返回值是无符号数,无法直接和int(有符号数)比较,无符号数可以转换为有符号数{y = y * 10 + (str[i] - 48);///此处要减48(ASCLL码中48为数字0)} ///字符串存储的是ASCLL码return y;
}
string对象获取字符串长度用 length()函数
将字符数组中的字符转换为整型变量的数字 将字符串转换为数字相关推荐
- 将字符数组中的字符按从小到大的顺序排序
<程序设计基础实训指导教程-c语言> ISBN 978-7-03-032846-5 p143 7.1.2 上级实训内容 [实训内容10]编写一个函数,要求用字符数组名作为参数,函数功能是将 ...
- C语言-输入任意多个数字,存到整型数组,支持任意间隔符,同时支持输入字母存到字符数组中
第一次在CSDN上写博客- 记录一下想了有那么久的,这串代码 起因是做应用密码学的作业时,有Vigenere密码的加密解密.仿射密码加密解密.Playfair算法.Hill密码 因为数据量比较大,要把 ...
- 将字符数组中存放的数字字符转换为数
字符数组里保存的是字符'0'-'9',其对应的ADCII码是48-57. 特别注意:用字符数组作加减运算时,是ASCII码在加减.例如 char s1[3]={'4','5','2'},s2[4]={ ...
- MATLAB删除字符数组中空格元素
MATLAB删除字符数组中空格元素 在编写Huffman信道编码时遇到的问题,字符型数组中有空格元素,删除空格元素并转换为数字数组. 关键是这两句,-16是空格键的ascii码减去'0'的ascii码 ...
- C语言试题四十六之将m行n列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。
1. 题目 请编写一个函数function,它的功能是:将m行n列的二维数组中的字符数据,按列的顺序依次放到一个字符串中. 2 .温馨提示 C语言试题汇总里可用于计算机二级C语言笔试.机试.研究生复试 ...
- LeetCode 5380. 数组中的字符串匹配
5380. 数组中的字符串匹配 python 字符串长度排序 class Solution:def stringMatching(self, words: List[str]) -> List[ ...
- 例13.14 将一组数据保存在字符数组中。
例13.14 将一组数据保存在字符数组中. 法一: #include<iostream> #include<sstream>//这是最新的头文件 #include<cst ...
- 如何在字符数组中存储空白字符
C没有为字符串定义专门的数据类型,而是把它存储在字符数组中,虽然这种方法可以有效地解决字符串存储问题,但当使用scanf函数为字符数组赋值时,含有空白符(空格.制表符.换行符)的字符串却无法完整储存. ...
- leetcode:1408. 数组中的字符串匹配
题目:1408. 数组中的字符串匹配 题目内容 给你一个字符串数组 words ,数组中的每个字符串都可以看作是一个单词.请你按 任意 顺序返回 words 中是其他单词的子字符串的所有单词. 如果你 ...
最新文章
- Intel发布FPGA
- Xamarin Anroid App访问网站失败
- 002_模板 + 数据模型 = 输出
- 类与类之间关系,用C#和JavaScript体现
- 使用Akka处理1000万条消息
- this.$modal.confirm 自定义按钮关闭_自定义函数,让你玩转Excel得心应手
- 【转】WebApi 身份认证解决方案:Basic基础认证
- ROS笔记(12) Rviz
- 48. 减少 DNS 查找(9)
- matlab语言与应用 10 数学问题的非传统解法
- C# Aspose.Word 操作word文档【一】
- 远程工具TeamViewer
- 炫酷的后台管理系统UI界面
- windows7交互式服务检测如何禁用?
- Data (Privacy) Regulation 数据隐私法规整理
- P4169 [Violet]天使玩偶/SJY摆棋子 [CDQ分治]
- 算法竞赛中的JAVA使用笔记(转载)
- qsv如何转换成AVI flv格式 ,最新转换方法
- 1.2配置通过Telnet登录系统
- kali工具熟悉——网络扫描
热门文章
- 自动网页签到 html,HTML5实现签到 功能
- 基于matlab的qpsk与bpsk信号性能比较仿真,基于matlab的QPSK与BPSK信号性能比较仿真.doc...
- 齐鲁医药学院计算机考试,齐鲁医药学院2020年单独招生和综合评价招生考试时间及考试科目...
- 计算机参数rp是什么,什么是RP
- 活性染料研究:Lumiprobe AF594 NHS 酯,5-异构体
- 谈论 ModSecurity 和新的 Coraza WAF
- 【电力电子技术AC-DC】电容滤波的单相不可控整流电路simulink仿真
- 10分钟从零搭建QQ机器人,实现自动回复、推送等功能
- ICC2:Design Planning(01)initial_DP
- js 模拟短信发送 JavaScript