精华内容
下载资源
问答
  • 2022-01-10 16:22:32

    1、c语言sizeof()和strlen(char *a)(注:c语言没有string类型的数据)

    strlen()需要头文件<string.h>,该函数参数必须是字符型指针(char*),从代表该字符串的第一个地址开始遍历,直到遇到结束符'\0'。返回的长度大小不包括'\0'。

    #include<stdio.h>
    #include<string.h>
    int main(){
    	char a[100];
    	int k=0;
    	gets(a);
    	int len=strlen(a);
    	printf("%d",len);
    	return 0; 
    }

    sizeof()不要头文件,该函数只能计算静态数组所占空间,是运算符。

    char ss[] = "0123456789";

    sizeof(ss)为11,ss是数组,计算到'\0'位置,因此是(10+1)

    char ss[100] = "0123456789";

    sizeof(ss)为100,ss表示在内存中预分配的大小,100*1

    2、c++语言string中L.length()和L.size()没区别,都必须加入头文件<string>,能连空格一起计算直到‘\n’

    #include<iostream>
    #include<string>
    using namespace std;
    int main(){
    	string a="sg fd";
    	int len=a.length();
    	cout<<len<<endl;
    	return 0; 
    }

    输出5。

    更多相关内容
  • C++字符串长度函数三种方法 实例代码 #include <iostream> #include <cstring> //调用strlen()函数需要使用该文件 using namespace std; int main() { string str = "Test string"; char *ch = ...

    C++取字符串长度函数三种方法

    实例代码

    #include <iostream>
    #include <cstring> //调用strlen()函数需要使用该文件
    using namespace std;
    
    int main()
    {
      string str = "Test string";
      char *ch = (char *)"perseverance51"; //需要强制类型转换
      char const *ch2 = "Are you OK!";
      cout << str.size() << endl;
      cout << str.length() << endl;
      cout << strlen(ch) << endl;
      cout << strlen(ch2) << endl;
      return 0;
    }
    
    • 打印结果
      在这里插入图片描述
    展开全文
  • 本文实例讲述了C++不使用变量求字符串长度strlen函数的实现方法。分享给大家供大家参考。具体实现方法如下: 1、strlen的源码实现: size_t strlen(const char *str) //strlen不做内存非法判断,如果是NULL,会...
  • C/C++计算字符串长度

    万次阅读 多人点赞 2019-10-07 18:09:15
    C/C++语言计算字符串长度 1.自定义函数求长度 2.使用strlen()函数 3.使用sizeof()操作符 4.使用length()函数 利用自定义函数的方法: int cont_str(char *s) { int i = 0; while ( str[i++] != '\0') ; return i; ...

    C/C++语言计算字符串长度

    1.自定义函数求长度
    2.使用strlen()函数
    3.使用sizeof()操作符
    4.使用length()函数
    利用自定义函数的方法:

    int cont_str(char *s)
    {
    int i = 0;      
    while ( str[i++]= '\0')
    ;
    return i;
    }
    

    利用string头文件中的strlen()函数:

    strlen(str); //假设str为待求的字符串数组名
    

    使用sizeof()操作符

    sizeof(str)/sizeof(str[0]); //假设str为待求的字符串数组名
    

    使用length()函数

    char a[10]
    std::cin>>a;
    length=a.length()
    

    注意:

    1. strlen()函数求出的字符串长度为有效长度,既不包含字符串末尾结束符 ‘\0’;
    2. sizeof()操作符求出的长度包含字符串末尾的结束符 ‘\0’;
    3. length()函数求出的字符串长度不包含字符串末尾结束符’\0’;
    4. 当在函数内部使用sizeof()求解由函数的形参传入的字符数组的长度时,得到的结果为指针的长度,既对应变量的字节数,而不是字符串的长度,此处一定要小心。
    5. C/C++的strlen(str)和str.length()和str.size()都可以求字符串长度。其中str.length()和str.size()是用于求string类对象的成员函数,strlen(str)是用于求字符数组的长度,其参数是char*。
    6. 这三种函数strlen、length、size函数计算的字符串长度都不算最后的操作符’\0’。
    7. strlen函数用之前需要先对字符数组定义,例如char str[]={“hello world”};或者char str[]={‘h’,‘e’,‘l’,‘l’,‘o’,’ ‘,‘w’,‘o’,‘r’,‘l’,‘d’,’\0’};
    8. getchar()就是从键盘获取字符,直到回车为止。

    第一种:strlen(char*)函数求的是字符串的实际长度,它求得方法是从开始到遇到第一个’\0’,如果你只定义没有给它赋初值,这个结果是不定的,它会从aa首地址一直找下去,直到遇到’\0’停止。
    第二种:sizeof(),求所占总空间的字节数。
    strlen函数用法见下链接:
    https://blog.csdn.net/u012209626/article/details/47449885
    cin.get()函数、cin.getline()函数、getline()函数、gets()函数、getchar()函数用法见下链接:
    https://www.cnblogs.com/qiang-wei/p/9332201.html

    展开全文
  • C++获取字符串长度的几个函数方式

    千次阅读 2021-05-19 07:54:31
    C/C++ strlen(str)、str.length()、str.size()、sizeof(str)都可以求字符串长度。其中str.length()、str.size()、sizeof(str)是用于求string类对象的成员函数strlen(str)是用于求字符数组的长度,其参数是char*。...

    C/C++ strlen(str)、str.length()、str.size()、sizeof(str)都可以求字符串长度。

    其中str.length()、str.size()、sizeof(str)是用于求string类对象的成员函数

    strlen(str)是用于求字符数组的长度,其参数是char*。

    补充知识:获取字符串长度的函数sizeof()、strlen()、length()、size()详解和区别

    在C++中计算长度的函数有四种,它们分别是sizeof() ,size(),strlen(),str.length()。

    一. sizeof()和strlen()两者区别:

    1)sizeof操作符的结果类型是size_t,该类型保证能容纳实现所建立的最大对象的字节大小。

    2)sizeof是运算符,strlen是函数。

    3)sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。

    4)sizeof在编译时期就计算出来,strlen在运行之后才能计算出来。

    5)strlen计算字符串的具体长度(只能是字符串),不包括字符串结束符。返回的是字符个数。sizeof计算声明后所占的内存数(字节大小),不是实际长度。

    举例:

    1)char* ss = "0123456789";

    sizeof(ss)为4,ss是指向字符串常量的字符指针,sizeof 获得的是指针所占的空间,则为4

    sizeof(*ss)为1,*ss是第一个char字符,则为1

    2)char ss[] = "0123456789";

    sizeof(ss)为11,ss是数组,计算到'\0'位置,因此是(10+1)

    sizeof(*ss)为1,*ss是第一个字符

    3)char ss[100] = "0123456789";

    sizeof(ss)为100,ss表示在内存中预分配的大小,100*1

    strlen(ss)为10,它的内部实现用一个循环计算字符串的长度,直到'\0'为止。

    4)int ss[100] = "0123456789";

    sizeof(ss)为400,ss表示在内存中预分配的大小,100*4

    strlen(ss)错误,strlen参数只能是char*,且必须是以'\0'结尾

    5)char[] a={'a','b','c'};

    sizeof(a)的值应该为3。

    char[] b={"abc"};

    sizeof(b)的值应该是4。

    6)若string str={'a','b','c','\0','X'};

    那么sizeof(str)为5,strlen(str)为3。

    二. string中的length()和size()

    c++中,在获取字符串长度时,size()函数与length()函数作用相同。

    例如:string str = “wang”

    则,str.length() = 4。

    除此之外,size()函数还可以获取vector类型的长度。

    例如:vector < int> num(15,2)

    则,num.size() = 15。

    以上这篇C++获取字符串长度的几个函数方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

    展开全文
  • 我们在实际过程中要经常去检测含有中文字符串的实际长度, 因为中文字符,和英文字符在一起的话.判断起来你麻烦点. 原理跟在asp中的一样.逐个去判断.是中文加2英文加1. 代码如下:ASCIIEncoding n = new ...
  • C/C++ strlen(str)、str.length()、str.size()、sizeof(str)都可以求字符串长度。 其中str.length()、str.size()、sizeof(str)是用于求string类对象的成员函数 strlen(str)是用于求字符数组的长度,其参数是char*...
  • C++获取字符串长度的几个函数

    万次阅读 2018-03-17 08:22:14
    C/C++ strlen(str)、str.length()、str.size()、sizeof(str)都可以求字符串长度。其中str.length()、str.size()、sizeof(str)是用于求string类对象的成员函数strlen(str)是用于求字符数组的长度,其参数是char*。...
  • 现在假设一输入为UTF8编码,如何能准确的定位到每个UTF8字符的“CharPoint”,而不会错误的分割字符呢? 参考这个页面:http://www.nubaria.com/en/blog/?p=289 可以改造出下面的函数: const unsigned char ...
  • c/c++ 计算字符数组/字符串长度

    千次阅读 2020-04-21 12:47:37
    1.自定义函数长度 2.使用strlen()函数 3.使用sizeof()操作符 4.使用length()函数 利用自定义函数的方法: int cont_str(char *s) { int i = 0; while ( str[i++] != '\0') ; return i; } 利用string头文件中的...
  • C++常用字符串长度计算函数

    万次阅读 2013-12-29 06:03:26
    常见的获取字符串长度的方法包括如下几种。  1.使用sizeof获取字符串长度sizeof的含义很明确,它用以获取字符数组的字节数(当然包括结束符\0)。对于ANSI字符串和UNICODE字符串,形式如下:  sizeof(cs)/sizeof...
  • C语言编写一个计算字符串长度函数 my_strlen(); 我的思路: 定义一个变量,从0计算,直到字符串遇到’\0’时结束。 #include<stdio.h> void my_strlen(char *str); int main() { char str[100]={0}; ...
  • C/C++计算字符串数组长度方法

    千次阅读 2021-11-24 20:53:02
    C/C++计算字符串数组长度方法: int len = sizeof(array)/sizeof(array[0]) 注意:字符串数组作为擦参数传递给其他函数时,对方函数中sizeof(array)返回值始终未4, 所以,如果一定要通过函数处理数组时,必须把数组...
  • 本文介绍如何计算字符串长度,共介绍三种方法,分别用length(), size(), strlen()实现 文章目录length()介绍size()介绍strlen()介绍 length()介绍 利用length()函数时,直接用字符串调用函数即可,格式如下: string...
  • c++怎么获取字符串长度

    千次阅读 2021-05-21 00:59:04
    C++获取字符串长度strlen()函数函数 strlen()是一个常规函数,他接受一个 C-风格字符串作为参数,并返回字符串包含的字符数。 参数必须是字符型指针(char*)。当数组名作为参数传入时,实际上数组就退化成指针了。...
  • c/c++-计算含有汉字的字符串长度

    千次阅读 2020-04-07 10:49:17
    编写get_lenth函数计算含有汉字的字符串长度,一个汉字为两个字节处理;已知:汉字编码为双字节,其中只要首字节首字节<0,就一定是个汉字。 include <iostream> using std::cout; int get_lenth(char ...
  • c++如何获取字符串长度

    千次阅读 2021-04-24 14:50:03
    直接获取字符串长度,包括空格在内 2.strlen()函数 需要添加头文件<string.h>,而且参数只能是char数组 而且结尾必须是\0(即字符数组不能满,因为满了结尾就不是\0,会接着向下检索到\0为止) 啊哦char c[6]{...
  • C语言中计算字符串长度函数

    万次阅读 2017-07-09 15:33:29
    1. strlen函数求得的字符串长度是从字符串第一个元素到第一个'\0'之间元素的个数(如果字符串中间有'\0',则结果不是整个字符串的长度),同时不包括该'\0' 2. sizeof求得的结果是存储该字符串的变量占用的空间大小,...
  • c++读取字符串和字符的6种函数

    千次阅读 2021-08-30 21:19:12
    字符串或字符的输入有好多个函数,scanf、getline()、cin.getline()、cin.get()、gets()、getchar()等 如果输入是不带空格的字符串,那用什么都可以了,建议用scanf或cin 如果输入带空格,那scanf、cin就用不了了,...
  • 常用字符串长度计算函数

    千次阅读 2017-05-09 08:50:47
    常见的获取字符串长度的方法包括如下几种。 1.使用sizeof获取字符串长度 sizeof的含义很明确,它用以获取字符数组的字节数(当然包括结束符\0)。对于ANSI字符串和UNICODE字符串,形式如下: sizeof(cs)/sizeof...
  • 编写一个程序,求字符串的长度,不能使用strlen函数。 (代码提示:i=0;while(s[i]!= '\0')i++; 则最后i的值就是字符串长度
  • 计算字符串长度函数大全

    千次阅读 2012-08-08 19:01:58
    常见的获取字符串长度的方法包括如下几种。 1.使用sizeof获取字符串长度 sizeof的含义很明确,它用以获取字符数组的字节数(当然包括结束符\0)。对于ANSI字符串和UNICODE字符串,形式如下: sizeof(cs)/...
  • C++获取字符串长度详解

    千次阅读 2019-08-12 13:04:26
    String 类型对象包括三种求解字符串长度函数:size() 和 length()、 maxsize()和 capacity(): size() 和 length():这两个函数会返回 string 类型对象中的字符个数,且它们的执行效果相同。 max_size():max_...
  • C++字符串长度获取方法

    万次阅读 2017-02-21 20:52:16
    C/C++ strlen(str)和str.length()和str.size()都可以求字符串长度。 其中str.length()和str.size()是用于求string类对象的成员函数 strlen(str)是用于求字符数组的长度,其参数是char*。
  • #include <stdio.h> int main() { char arr[]="bit"; int len=0; len = my_strlen(arr); printf("len=%d",len); return 0; } int my_strlen(char * str) { int count=0; while(*str!... .
  • c++利用指针求字符串数组长度

    千次阅读 2020-05-25 16:28:40
    #include<..."请输入一字母(不能含有空格以回车结束):"<<endl; cin>>A; int b; b=lenth(A); cout<<"输入字母长度为"<<b<<"个"<<endl; return 0; } int l
  • 我们都知道在C语言标准库string.h中有一个strlen()函数可以求得字符串长度,那么如果让我们自己写一个这样的函数如何去写呢?下面介绍三种实现的方法。 一、使用计数器的方法 所谓计数器方法,顾名思义,就是创建一...
  • 两者区别 sizeof操作符的结果类型是size_t,它在头文件中typedef为...sizeof计算的是变量的大小,而strlen计算的是字符串长度,前者不受字符’\0’影响,后者以’\0’作为长度判定依据 测试代码 int main() {
  • c++ 字符串相关函数

    千次阅读 2019-03-13 15:30:16
    c: ...2. 字符串复制 头文件:#include &lt;string.h&gt; 和 #include &lt;stdio.h&gt; 原型声明:char *strcpy(char* dest, const char *src); 函数原型:char *strncpy(ch...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 93,644
精华内容 37,457
关键字:

c++计算字符串长度函数

c++ 订阅