字符串比较大小的principle 、ASCII码和字符串string

2024-04-07 08:58

本文主要是介绍字符串比较大小的principle 、ASCII码和字符串string,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://www.cnblogs.com/aduck/articles/2246168.html 

换行符的ASCII码是: 10,C语言用'\n'表示。回车符的ASCII码是: 13,C语言用'\r'表示。0是48   A65 a 97      空格 3
#include<iostream>  //代码1 表示
#include<string>
using namespace std;
int main()
{
	//string max = NULL;//错误
	string max1 = "";
	string max2 = " ";
printf("%d\n", max1.size());//0
	printf("%d\n", max2.size());//1
	printf("%d\n", sizeof(max1));//28  一般是4  vs2013是28
	printf("%d\n", sizeof(max2));//28  一般是4  vs2013是28
}

#include<iostream>  //代码1 表示

#include<string>
using namespace std;
int main()
{
string max = "0";//48
string max1 = "";//0
string max2 = " ";//32
string max3 = "a";//97
string max4 = "-1";//45
string max5 = "-3";//45
string max6 = "-12";//45 负数全是45(c++)
string max7 = "-26";//45
string max8 = "12";//49 等价于1
max.c_str();
// string max3 =null;
printf("%d,%d,%d,%d\n", max,max1,max2,max3);
printf("%d,%d,%d,%d\n", max.c_str(), max1.c_str(), max2.c_str(),
max3.c_str());
printf("%d,%d,%d,%d,%d\n", max[0], max1[0], max2[0], max3[0], max4[0]);
printf("%d,%d,%d,%d,%d\n", max.c_str()[0], max1.c_str()[0], max2.c_str()[0],
max3.c_str()[0], max4.c_str()[0]);


printf("%d,%d,%d,%d\n", max5[0], max6[0], max7[0], max8[0]);
printf("%d,%d,%d,%d\n", max5.c_str()[0], max6.c_str()[0], max7.c_str()[0], 
max8.c_str()[0]
);
char c = '-1';  //49
char c1 = '-2';// 50 取绝对值

char c2 = '-100';//48
char c3 = '-114';//52  取绝对值对10求余数
printf("%d,%d,%d,%d\n",c,c1,c2,c3);
}


//结果
//6695056, -859045840, -858993460, -858993460  //随机数字
//4980076, 4980040, 4980004, 4979968  //随机数字
//48, 0, 32, 97, 45
//48, 0, 32, 97, 45
//45, 45, 45, 49
//45, 45, 45, 49
//49, 50, 48, 52
//请按任意键继续. . .. .

https://social.microsoft.com/Forums/es-ES/66a069ec-bce7-4952-8bc1-b7d0145792be/string-?forum=visualcshartzhchs

http://wenwen.sogou.com/z/q326415606.htm

http://bbs.csdn.net/topics/120041459

string比较大小的原理(同c语言字符串的比较):

是首字母的ASCII码,如果首字母相同再比较第二个字母,以此类推。举例来说字符串abstract小于board。
比较的时候,从字符串左边开始,一次比较每个字符,直接出现差异、或者其中一个串结束为止。
比如ABC与ACDE比较,第一个字符相同,继续比较第二个字符,由于第二个字符是后面一个串大,所以不再继续比较,结果就是后面个串大。
再如ABC与ABC123比较,比较三个字符后第一个串结束,所以就是后面一个串大。
所以,长度不能直接决定大小,字符串的大小是由左边开始最前面的字符决定的。
http://zhidao.baidu.com/link?url=mwgLd1SF5fpBvMDLklFdK7-XAzPjqM61WvhKojdJxniWAPkfUxVyV4KmtcrLPeWqnFFKNSTZNX4ovx0eApEXNq
#include<iostream>
#include<string>
using namespace std;
int main()
{	
	 string max = "2";//48
	 string max1 = "1234";
	 printf("%d\n", max > max1 ? 1 : 0);
}//结果
1
所以字符串比较大小是优先级比较,左大则大。而不是以长度为准。所以如果长度相同的数字可以直接用字符串比较大小了,但必须都是正数。上一篇日志时间搓算法就是用的这个原理。

这篇关于字符串比较大小的principle 、ASCII码和字符串string的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/882162

相关文章

MySQL查询JSON数组字段包含特定字符串的方法

《MySQL查询JSON数组字段包含特定字符串的方法》在MySQL数据库中,当某个字段存储的是JSON数组,需要查询数组中包含特定字符串的记录时传统的LIKE语句无法直接使用,下面小编就为大家介绍两种... 目录问题背景解决方案对比1. 精确匹配方案(推荐)2. 模糊匹配方案参数化查询示例使用场景建议性能优

python删除xml中的w:ascii属性的步骤

《python删除xml中的w:ascii属性的步骤》使用xml.etree.ElementTree删除WordXML中w:ascii属性,需注册命名空间并定位rFonts元素,通过del操作删除属... 可以使用python的XML.etree.ElementTree模块通过以下步骤删除XML中的w:as

MySQL 获取字符串长度及注意事项

《MySQL获取字符串长度及注意事项》本文通过实例代码给大家介绍MySQL获取字符串长度及注意事项,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 获取字符串长度详解 核心长度函数对比⚠️ 六大关键注意事项1. 字符编码决定字节长度2

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri

使用Python实现base64字符串与图片互转的详细步骤

《使用Python实现base64字符串与图片互转的详细步骤》要将一个Base64编码的字符串转换为图片文件并保存下来,可以使用Python的base64模块来实现,这一过程包括解码Base64字符串... 目录1. 图片编码为 Base64 字符串2. Base64 字符串解码为图片文件3. 示例使用注意

java String.join()方法实例详解

《javaString.join()方法实例详解》String.join()是Java提供的一个实用方法,用于将多个字符串按照指定的分隔符连接成一个字符串,这一方法是Java8中引入的,极大地简化了... 目录bVARxMJava String.join() 方法详解1. 方法定义2. 基本用法2.1 拼接

golang float和科学计数法转字符串的实现方式

《golangfloat和科学计数法转字符串的实现方式》:本文主要介绍golangfloat和科学计数法转字符串的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望... 目录golang float和科学计数法转字符串需要对float转字符串做处理总结golang float

Python如何判断字符串中是否包含特殊字符并替换

《Python如何判断字符串中是否包含特殊字符并替换》这篇文章主要为大家详细介绍了如何使用Python实现判断字符串中是否包含特殊字符并使用空字符串替换掉,文中的示例代码讲解详细,感兴趣的小伙伴可以了... 目录python判断字符串中是否包含特殊字符方法一:使用正则表达式方法二:手动检查特定字符Pytho

MySQL 字符串截取函数及用法详解

《MySQL字符串截取函数及用法详解》在MySQL中,字符串截取是常见的操作,主要用于从字符串中提取特定部分,MySQL提供了多种函数来实现这一功能,包括LEFT()、RIGHT()、SUBST... 目录mysql 字符串截取函数详解RIGHT(str, length):从右侧截取指定长度的字符SUBST

Python将字符串转换为小写字母的几种常用方法

《Python将字符串转换为小写字母的几种常用方法》:本文主要介绍Python中将字符串大写字母转小写的四种方法:lower()方法简洁高效,手动ASCII转换灵活可控,str.translate... 目录一、使用内置方法 lower()(最简单)二、手动遍历 + ASCII 码转换三、使用 str.tr