精华内容
下载资源
问答
  • 两种处理字符串长度的方法
    千次阅读
    2022-01-02 09:33:35

    在求字符串长度时,第一时间会想到运用strlen这个函数,但对于初学者来说,除了掌握这个函数之外,还应当自己写函数来实现相似的功能。

    接下来我列举了三种方法来求字符串长度,供大家参考:

    (1)运用strlen

    注意点:运用该函数时需注意包含string.h头函数

    #include<stdio.h>
    #include<string.h>
    int main()
    {
    	char ch[] = "abcdefg";
    	int len = strlen(ch);
    	printf("字符串长度为%d\n", len);
    	return 0;
    }

    (2)自定义my_strlen函数

    注意点:拿“abcdefg”字符串举个例子,它在内存中存储的样式为a b c d e f g \0,统计字符串的长度也就是要统计“\0”之前的字符有多少。

    那么,设置两个变量,一个用来依次访问字符串中的每一个字符,一个用来统计数量。

    #include<stdio.h>
    int my_strlen(char ch[])
    {
    	int i = 0;
    	int num = 0;
    	while (ch[i] != '\0')
    	{
    		i++;
    		num++;
    	}
    	return num;
    }
    int main()
    {
    	char ch[] = "abcdefg";
    	int len = my_strlen(ch);
    	printf("字符串长度为%d\n", len);
    	return 0;
    }
    

    (3)用字符型指针和递归来实现

    注意点:求"abcdefg"的字符串长度,可以将其看成1+my_strlen(bcdefg)->1+1+my_strlen(cdefg)->1+1+1+my_strlen(defg)->...一直到指针指向'\0'为止。

    #include<stdio.h>
    int my_strlen(char* pr)
    {
    	if (*pr != '\0')
    	{
    		return my_strlen(pr + 1) + 1;
    	}
    	else
    	{
    		return 0;
    	}
    }
    int main()
    {
    	char ch[] = "abcdefg";
    	int len = my_strlen(ch);
    	printf("字符串长度为%d\n", len);
    	return 0;
    }

    更多相关内容
  • C++求字符串长度两种方法

    千次阅读 2019-12-09 11:40:34
    针对于string类型的,可以采用strlen ...//字符串测试Unicode和ansi void strControl() { std::string demo = "1s骄傲uasda"; std::wstring msss = L"dasdff"; size_t cur_length =strlen(demo.c_...
    • 针对于string类型的,可以采用strlen
    • 针对于wstring类型的,可以采用_tcslen方法
      实例代码:
    
    //字符串测试Unicode和ansi
    void strControl()
    {
    	std::string demo = "1s骄傲uasda";
    	std::wstring msss = L"dasdff";
    	size_t cur_length =strlen(demo.c_str());//求正常字符的字符串长度
    	size_t cur_w_length = _tcslen(msss.c_str()); //求宽字符的字符串长度
    }
    
    
    展开全文
  • (C语言)求字符串长度的四种方法

    千次阅读 2022-07-29 11:42:48
    用四种方法字符串长度

    目录

    方法一:调用内置函数strlen求字符串长度

    方法二:创建临时变量计算字符串长度

    方法三:不创建临时变量计算字符串长度(递归)

    方法四:指针减指针求字符串长度


    我们知道C语言是自带内置函数strlen求字符串长度的,但其实我们也可以自己编写函数来求字符串长度

    方法一:调用内置函数strlen求字符串长度


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

    方法二:创建临时变量计算字符串长度


    首先,我们自定义函数my_strlen求字符串长度

    在my_strlen中用count统计字符的个数,我们传入的char类型的指针str,对他进行解引用(*str)得到str指向的值,循环判断(*str)是否等于‘\0’,如果不等,则count+1,str指向下一个字符;如果相等,则说明遍历到了字符串结尾,最后返回count,也就是统计的字符的个数。

    代码实现如下:

    #include <stdio.h>
    
    int my_strlen(char* str)
    {
        int count = 0; //计数
        while(*str != '\0')
        {
            count++;
            str++;
        }
        return count;
    }
    
    int main()
    {
        char s[] = "abc";
        int len = my_strlen(s);
        printf("%d ",len);
        return 0;
    }
    

    方法三:不创建临时变量计算字符串长度(递归)


    递归的主要思想:大事化小

    使用递归的两个必要条件:

    1、存在限制条件,当满足这个限制条件的时候,递归便不再继续

    2、每次递归调用之后越来越接近这个限制条件


    计算字符串(abc)长度的递归思想:

    代码实现如下:

    #include <stdio.h>
    
    int my_strlen(char* str)
    {
        if(*str != '\0')
        {
            return 1 + my_strlen(str+1);
        }
        else
            return 0;
    }
    
    int main()
    {
        char s[] = "abc";
        int len = my_strlen(s);
        printf("%d ",len);
        return 0;
    }
    

    方法四:指针减指针求字符串长度


    两个指针相减,得到的是两个指针之间元素的个数

    根据这个特性,我们可以有一种新的求字符串长度的思路

    代码实现:

    #include <stdio.h>
    
    int my_strlen(char* str)
    {
        char* start = str;
        while(*str)
        {
            str++;
        }
        return str - start;
    }
    
    int main()
    {
        char s[] = "abc";
        int len = my_strlen(s);
        printf("%d ",len);
        return 0;
    }
    

    展开全文
  • abap 中对于字符串长度的计算一般用 strlen 函数实现。但此函数只能算出字符的个数无法计算字符串的长度,例如 'ABC你好'用此函数计算得到的值为5,显然它不是我们想要的,它的字节长度为7 。 经过研究,我写了一个...

      abap 中对于字符串长度的计算一般用 strlen 函数实现。但此函数只能算出字符的个数无法计算字符串的长度,例如 'ABC你好'用此函数计算得到的值为5,显然它不是我们想要的,它的字节长度为7 。

       经过研究,我写了一个函数可以实现功能代码如下:

    FUNCTION YGET_CNCHAR_CHARLE.
    *"----------------------------------------------------------------------
    *"*"Local interface:
    *"  IMPORTING
    *"     REFERENCE(STRING) TYPE  STRING 传入字符串
    *"  EXPORTING 
    *"     REFERENCE(STR) TYPE  STRING  返回字符串
    *"     REFERENCE(CHARLEN) TYPE  I   返回长度
    *"----------------------------------------------------------------------

    DATA: w_uccp TYPE i,
    w_temp(2) TYPE c,
    w_left(100) TYPE c,
    w_len(10) TYPE c,
    s_len TYPE i
    .
    w_left = string.

    DATA : BEGIN OF line,
           text TYPE c,
           END OF line,
           itab LIKE TABLE OF line WITH HEADER LINE.


    *DATA str TYPE string.
    DO.
      CALL FUNCTION 'TEXT_SPLIT'
        EXPORTING
          length = 2
          text   = w_left
        IMPORTING
          line   = w_temp
          rest   = w_left.

      CALL METHOD cl_abap_conv_out_ce=>uccpi
        EXPORTING
          char = w_temp
        RECEIVING
          uccp = w_uccp.
      w_len = STRLEN( w_temp ).
    *  WRITE: /1 w_temp,
    *  10 w_uccp,
    *  25 w_len.
      IF w_uccp > 256.
        CONCATENATE str w_temp INTO str.
      ENDIF.
      IF w_left IS INITIAL OR sy-index > 100.
        EXIT.
      ENDIF.
    ENDDO.
    IF str IS NOT INITIAL.
      DATA:t_len TYPE i.
      clear :  s_len,charlen.
      t_len = STRLEN( string ).
      s_len = STRLEN( str ).
      t_len =  t_len - s_len .
      s_len = s_len * 2 .
      charlen =  t_len + s_len.
    *  WRITE :/,'CHARLEN=' ,charlen, 'STR= ',str.
    ENDIF.

     

    ENDFUNCTION.



    """""""""方法2


    DATAlv_str TYPE string,
                lv_len TYPE i.

    lv_str 'AB中国'.

    lv_len cl_abap_list_utilities=>dynamic_output_lengthlv_str ).

    WRITE lv_len.

    展开全文
  • js判断字符串长度方法

    千次阅读 2019-10-13 19:24:37
    js中判断字符串的长度一般都是使用 length 属性 ,但是 length 属性获取到的字符串长度是以字节为单位,如果我们想要利用 js 根据字节来获取或判断一串字符串的长度该如何做呢? js 按字符判断一串字符串的长度 ...
  • 种方法字符串长度

    千次阅读 2020-04-15 17:23:21
    使用四种方法字符串长度 话不多说, 直接上代码: #include<stdio.h> #include<string.h> //计数器方法 int my_strlen1(char* str) { int count = 0; while (*str++ != '\0') { count++; } ...
  • 所谓计数器方法,顾名思义,就是创建一个临时变量count用来计数,遍寻字符串直到找到字符串结束标志’\0’,每循环找一次就count+1,最后返回count就可以得到字符串长度了。 //函数 int my_strlen(char *st
  • SQL-字符串提取/字符串长度

    千次阅读 2021-12-19 14:45:13
    本文主要记录SQL-字符串提取substr()/substring()/left()/right()/like()/rlike()/substring_index()操作/获取字符串长度length()/char_length()/character_length()/bit_length()的相关笔记
  • 要确定字符串是否相等,可以使用严格相等运算符 。...比较 JavaScript 字符串长度 如果您需要查找字符串中哪一个更长,那么运算符“大于”和“低于”将不太适合您。他们以字母数字顺序逐个比较字符串的字
  • c ++中字符串长度的The string length in C++ can be calculated or found by various methods. Here, in this tutorial, we are going to learn all of them. And we would also implement the same through ...
  • 今后继续整理算法并写出自己的理解...<1> 题目描述:实现求字符串长度函数my_strlen <2> 方法一:直接法 <3> 方法二:递归法源码: 一、 递归实现my_strlen 1、 直接法#include using namespace std; size_t my_strlen
  • C语言求字符串长度

    千次阅读 2019-09-16 12:10:27
    字符串长度两种方法 第一种: 非递归:思想很简单就是调用<string.h>库函数中的strlen()函数即可 代码如下所示: #include<stdio.h> #include<string.h> int main() { char *str = "hello...
  • 截取字符串方法

    万次阅读 2022-03-20 21:28:44
    语法:字符串.slice(开始下标, 结束下标) 注意: 2. 返回被截取出来的字符串,不包含结束下标对应的字符 3. 如果第二个参数省略了,就默认截取到字符串末尾 4. 如果开始下标和结束下标相等 - 截取到空字符串 5....
  • Lua中获取字符串长度整理

    万次阅读 2018-10-31 22:58:41
    在Lua中,获取字符串长度我们一般使用#str(不建议使用string.len(str))! local str = "abc" local len = #str print(len) -- 3 str = "你们好" len = #str print(len) -- 9 这里就出现了一个问题:为啥"abc...
  • js字符串分割处理的几种方法

    万次阅读 2022-03-29 00:11:52
    js字符串处理的几种方法总结 前端开发中,字符串处理是比较常见的,笔者在最近复习的过程中也把它整理了出来。 首先,先来看看js截取三姐妹substring()、subsstr()、slice() 1、slice(start, end) 大姐slice()、从...
  • 自创一个可逆的字符串长度压缩算法

    千次阅读 热门讨论 2020-08-19 17:26:07
    自己想出来LZW算法(其他算法压缩出来的长度可能更长),在我们这里并不需要每次都动态生成字符串映射表,只需要提前设定好一个表用于所有的压缩和解压缩过程就行,不过想了一下,这个表会比较庞大,也挺麻烦(陷入...
  • 描述: ...从头开始,不断增加字符判断每一个字符串是否是回文,并判断当前会问长度是否大于之前记录的最长回文串的长度,如果大于则更新回文串。 function longestPalindrome(str){ let longstr=
  • 在String类和继承抽象类AbstractStringBuilder的StringBuilder和StringBuffer类中,length()和codePointCount()方法都是计算字符串长度。测试运行的长度值是相等的,那为什么要设定方法呢?经过研究发现:对于...
  • Lua中字符串长度

    千次阅读 2020-02-18 19:54:11
    一般来说有两种方式,一种使用"#"来计算,另一种来使用字符串函数string.length来计算; local str1="中国人" local str2="zhongguoren" print(#str1) --9 print(string.len(str1)) --9 print(#str2) --11 print...
  • MySQL-字符串最大长度

    千次阅读 2021-07-30 14:30:39
    一、字符串类型最大长度 | 数据类型 | 最大长度 | |:--------| :--------| | CHAR | 255 | | BINARY | 255 | | VARCHAR, VARBINARY | 65,535 | | TINYBLOB, TINYTEXT | 255 | | BLOB, TEXT | 65,535 | | MEDIUMBLOB...
  • #include<stdio.h> { gets(a); i=0; whlie(a[i]!='\0') i++; printf("%d",i); }
  • 常用的字符串方法大全

    千次阅读 2020-11-15 11:10:28
    JavaScript中字符串作为基本类型,它为我们提供了很多好用的API,本期就来总结一下一些常见的字符串方法字符串方法按照功能来划分,可分为增删改查四个部分 写在前面:了解一个方法,我们可以通过三个方面,1....
  • 字符串长度计算

    千次阅读 2018-07-08 16:26:07
    一、获取字符串长度的几种方法- 使用 bytes.Count() 统计- 使用 strings.Count() 统计- 将字符串转换为 []rune 后调用 len 函数进行统计- 使用 utf8.RuneCountInString() 统计例:str:="HelloWord"l1:=len...
  • Java三种方法实现字符串排序

    万次阅读 2021-01-30 21:04:28
    文章目录Java字符串排序排序方法概述键索引计数法低位优先的字符串排序(LSD)高位优先的字符串排序(MSD)三向字符串快速排序 排序方法概述 对于许多应用,决定顺序的键都是字符串。本篇讲述如何利用字符串的特殊...
  • java字符串分割方法

    万次阅读 2021-11-17 22:37:51
    java 分割字符串split()方法 实现功能 编写一个将字符串分段的类,传入:需分段的字符串 与 字符个数(以此个数进行分段),输出:按指定字符个数进行分段后的若干字符串(汉字算单个字符)。 功能实现要求分析 ...
  • C++获取字符串长度详解

    千次阅读 2019-08-12 13:04:26
    String 类型对象包括三求解字符串长度的函数:size() 和 length()、 maxsize()和 capacity(): size() 和 length():这个函数会返回 string 类型对象中的字符个数,且它们的执行效果相同。 max_size():max_...
  • 如下字符数组or字符串,用strlen函数求长度各是多少? char * p = “abc” 与 char a[] = &amp;amp;quot;abc&amp;amp;quot;两种形式并不同; char * str1 = &amp;amp;quot;abc&amp;amp;quot;; ...
  • public static void main(String[] args) { String str1 = "1234"; String str2 = "12345"; String str3 = "1234"; //方法一:使用StringUtilS工具类 /* =0则相等 StringUti...
  • golang中获取字符串长度的几种方法

    万次阅读 2016-11-21 12:46:58
    一、获取字符串长度的几种方法 - 使用 bytes.Count() 统计 - 使用 strings.Count() 统计 - 将字符串转换为 []rune 后调用 len 函数进行统计 - 使用 utf8.RuneCountInString() 统计 例: str:="HelloWord...
  • C++ 获取字符串长度

    千次阅读 2020-03-14 10:22:23
    两种方法,一种是length(),一种是size() string str1="123"; cout<<str1.length()<<endl;//输出3 cout<<str1.size()<<endl;//输出3 2.字符数组的长度获取 strlen方法获取实际长度,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 752,151
精华内容 300,860
热门标签
关键字:

两种处理字符串长度的方法