1、不带转义字符的字符

如:“abc!x=/”,其长度为 7

2、带转义字符的字符串

(1) 字符串“abcn”:其中的'n'为转义字符(换行符),计算字符串长度时只能计作一个字符,所以该字符串的长度为4(而
不是5)。

(2) 字符串“abcn'"":其中有4个转义字符:'n'(换行符)、''(反斜杠)、'''(单引号)、'"'(双引号),所以该字符串的长度为7(而不是11)。

(3) 字符串“abc0xyz”:其中有一个转义字符'0',它是字符串结束符,所以,当用函数strlen来测试该字符串的长度时,结果应该为3(而不是7)。

(4) 字符串“abc0xy”:其中有一个转义字符''(反斜杠),这样,后面的字符串“0xy”照样计算,所以,该字符串的长度为7(而不是将第二个反斜杠与其后的0结合为一个转义字符'0',若那样的话,第一个反斜杠将无法处理,因为一个转义字符总是由反斜杠加其他字符组成的,单独的一个反斜杠不能作为任何合法的字符)。

(5) 若将字符串“abc0xy”改为“abc0xy”:则其中有二个转义字符''(反斜杠)和'0'(字符串结束符),这时,当用函数strlen来测试该字符串的长度时,结果应该为4(而不是7)。

(6) 若将字符串“abc0xy”改为“abc061xy”:则其中有二个转义字符''(反斜杠)和'061'(ASCII码值等于061的字符,也即数字字符'1'),'x12'(1和2为两个16进制数,同上),这时,当用函数strlen来测试该字符串的长度时,结果应该为7(而不是4或9)。所以,当遇到转义字符'0'时,还要看其后面是否还有数字,若有,则应将后面的数字(一至二位)与前面的'0'相结合作为一个字符计入整个字符串的长度。若用printf(“abc061xy”);输出,则输出结果为:abc1xy

1、char指针引导的字符数组:

strlen返回字符数组的长度,包括空格。

#include<iostream>#include<cstring>using namespace std;int main(){const char* p = "hell o";   //因为"hell o"是常量型的,所以要加constcout<<strlen(p);return 0;}

结果:

2、char数组:

#include<iostream>#include<cstring>using namespace std;int main(){char p[] = "hell o";cout<<strlen(p);return 0;}

结果:

3、string字符串的长度:

#include<iostream>#include<cstring>using namespace std;int main(){string p = "hell o";    cout<<p.length();return 0;} 

结果:

4、char数组结束符 0:

#include<iostream>#include<cstring>using namespace std;int main(){const char* p = "hel0l o";cout<<strlen(p);return 0;}

结果:

5、string字符串结束符 0:

#include<iostream>#include<cstring>using namespace std;int main(){string p = "hel0l o";cout<<p.length();return 0;} 

结果:

二维字符数组按长度排序_字符串长度 字符数组长度相关推荐

  1. C#版二维坐标点按行排序

    版权声明:本文为博主原创文章,未经博主允许不得转载.https://blog.csdn.net/mr_frank_xie/article/details/84977398 二维坐标点按行排序的算法思路 ...

  2. Python 二维列表按多列排序 反向排序

    Python 二维列表按多列排序 (有多个元素需要排序 代码 代码 两种方法均可 raw_list = [[6,2,'c'],[4,5,'b'],[7,8,'a']]sorted_list = sor ...

  3. java String转数组||String转集合||将字符串转化为数组

    java String转数组||String转集合||将字符串转化为数组 如果你和我一样你们公司有人这样存数据的话 这就很气人,如果用分割的方法的话 还需要去除前后两个中括号,还有两个双引号要分割,气 ...

  4. php 初始二维数组长度,php二维数组排序与默认自然排序的方法介绍

    php二维数组排序函数,默认自然排序,即sort排序.这里可以指定按二维数组中的某个值进行多种方法排序,具体看下面的程序注释. 代码如下: /** * @function 二维数组自然排序 * @au ...

  5. c#给定二维数组按升序排序_在数组中按升序对数字进行排序| 8086微处理器

    c#给定二维数组按升序排序 Problem: Write a program in 8086 microprocessor to sort numbers in ascending order in ...

  6. c++ 字符串数组长度排序_数组 | 后缀数组的求法及应用

    作者:Andy__lee 链接:https://blog.nowcoder.net/n/6b4a93e186ed4a358321de6a7c3b4f19 来源:牛客网 定义 维基百科 - 后缀数组 让 ...

  7. java数组给名字排序_用Java给数组排序

    public class BubbleDemo { public static void main(String[] args) { int arr[]={1,3,5,7,2,4,6,8,9}; bu ...

  8. 动态二维码中值滤波处理_使用中值滤波原理过滤异常数据

    最近有一个程序需要做一些数据分析,遇见一个求平均值的需求.数据序列由传感器输出类似如下:[10,12,11,25,9,10,9,45,13,12,10,11,78,12,12,13,10,9].在这个 ...

  9. java 二维数据结构_JAVA描述算法和数据结构(01):稀疏数组和二维数组转换

    一.基本简介 1.基础概念 在矩阵中,若数值为0的元素数目远远多于非0元素的数目,并且非0元素分布没有规律时,则称该矩阵为稀疏矩阵:与之相反,若非0元素数目占大多数时,则称该矩阵为稠密矩阵.定义非零元 ...

最新文章

  1. 正确配置Linux系统ulimit值的方法【转】
  2. 慕了!北京大学新校区来了!
  3. MVC模式下My97DatePicker日期控件引用注意事项
  4. 第十届蓝桥杯java B组—试题D 数的分解
  5. Django简介Django 各个环境下的安装
  6. java spring hiberate_Java程序员:Spring Boot和Hibernate一起使用的技巧
  7. Win下部署Django开发环境
  8. java对象布局查看工具_Java 查看对象布局工具 - Java Object Layout
  9. 2019 蓝桥杯省赛 A 组模拟赛(一)阶乘位数
  10. TiKV 正式从 CNCF 毕业,成为云原生时代构建分布式系统的基石
  11. 【算法07】求子数组的最大和
  12. python简单应用_python之Click的简单应用
  13. 学术论文撰写(逻辑清晰,浅显易懂,套用模板)
  14. AM3352的I2C驱动与传感器sht20的应用
  15. 【Net Core系列】(前言).net core学习笔记
  16. Cocos2d-x制作跨平台太空射击游戏
  17. vue echarts柱状统计图,多组数据对比
  18. 机器学习模型评价(Evaluating Machine Learning Models)-主要概念与陷阱
  19. 在Ubuntu下载Python3.6.2并建立软连接
  20. 基于tensorflow+CNN的报警信息短文本分类 代码理解(纯小白)

热门文章

  1. 搜索打表大找规律 (hdu2045)
  2. Oracle 体系结构2 - 共享和专用服务器
  3. Prism4文档翻译(第四章 第一部分) 转载bluesky234
  4. 清除vs2005起始页最近打开项目
  5. 技巧/诀窍:在ASP.NET中重写URL
  6. linux中read,write和recv,send的区别(转)
  7. 蓝牙mesh — 解密蓝牙mesh系列文章汇总
  8. 图形基础 GPU架构(1)背景
  9. 第十三届“华中杯”大学生数学建模挑战赛题目 B 题 技术问答社区重复问题识别
  10. buu 丢失的MD5