精华内容
下载资源
问答
  • C语言字符串长度

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

    求字符串的长度

    有两种方法
    第一种:
    非递归:思想很简单就是调用<string.h>库函数中的strlen()函数即可
    代码如下所示:

    #include<stdio.h>
    #include<string.h>
    int main()
    {
    	char *str = "hello";
    	int len = strlen(str);
    	printf("%d\n", len);
    	return 0;
    }
    

    第二种:
    递归
    :思想就是大问题化成小问题,求字符串长度莫非就是字符串中的字母个数相加,例如hello就是5个字母即它的字符串长度就是5。递归满足的两个条件是:1.自己调用自己;2.终止条件
    而怎么算把字符串读完,当遇到’\0’时就停止了,所以这个即是递归函数的终止条件;而怎么调用自己呢,我们知道字符串长度可以是h+(ello)的长度,而ello可以是e+(llo)的长度,以此类推,即可以写出递归函数
    代码如下所示:

     #include<stdio.h>
        #include<string.h>
        Mystrlen(char *p)//p是指针变量存放的是字符串首位字符的地址
        {
        	if (*p == '\0')//*p表示间接访问,若字符串地址里的内容是'\0'即表示字符串长度为0
        	{
        		return 0;
        	}
        	else//若字符串地址里的内容不是'\0',则最少返回1,即字符串中有一个字符
        	{
        		return 1 + Mystrlen(p + 1);
        	}
        }
        int main()
        {
        	char *str = "hello";
        	int len = Mystrlen(str);
        	printf("%d\n", len);
        	return 0;
    

    运行结果如下所示:
    在这里插入图片描述

    展开全文
  • 输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则输出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba 思路 这是典型的递归求解问题,递归算法有四个特性: 必须有可...
  • C语言 计算字符串长度的几种方法

    千次阅读 2020-09-23 21:09:30
    C语言 计算字符串长度的几种方法 C语言计算字符串长度,可以手动计算也可以使用库函数或者sizeof()操作符。 自定义函数求长度 使用strlen()函数 使用sizeof()操作符 自定义函数 int cont_str(char *s) { int i = 0;...

    C语言 计算字符串长度的几种方法:

    C语言计算字符串长度,可以手动计算也可以使用库函数或者sizeof()操作符。

    自定义函数求长度
    使用strlen()函数
    使用sizeof()操作符

    自定义函数

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

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

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

    使用sizeof()操作符

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

    注意:
    strlen()函数求出的字符串长度为有效长度,既不包含字符串末尾结束符 ‘\0’;

    sizeof()操作符求出的长度包含字符串末尾的结束符 ‘\0’;

    当在函数内部使用sizeof()求解由函数的形参传入的字符数组的长度时,得到的结果为指针的长度,既对应变量的字节数,而不是字符串的长度,此处一定要小心。(当数组或者字符串(可以理解为数组)作为函数参数是,是会当做指针来使用,指针的长度由编译器决定,大多数为4个byte. )
    例如:

    void strlen(char* str)
    {
         int length;
         length = sizeof(str)/sizeof(str[0]);  //str为4个字节,str[0] = 1  
    }
    
    展开全文
  • C语言获取字符串长度的几种方法

    万次阅读 多人点赞 2020-09-02 10:50:58
    C语言中,想要获取字符串长度可以有很多方法,下面分别介绍 一、使用sizeof()运算符 在C语言中,sizeof() 是长度的运算符,括号中可以放入数据类型或者表达式,一般我们用来计算字符串长度。 基本用法: int i=10;...

    在C语言中,想要获取字符串长度可以有很多方法,下面分别介绍

    一、使用sizeof()运算符

    在C语言中,sizeof() 是长度的运算符,括号中可以放入数据类型或者表达式,一般我们用来计算字符串长度。

    基本用法:

    int i=10;
    sizeof(i);//表达式
    
    char str[]="hello world";
    sizeof(str);
    
    sizeof(double);//数据类型
    

    在使用sizeof()求字符串长度时,会将 ‘\0’ 也计算到字符串长度中。例如"abcd"用sizeof()求长度会计算得到5。
    注意:char str[100]=""; sizeof(str)的值是100。

    二、使用strlen函数

    在string.h中提供了计算字符串长度的函数。

    语法:

    size_t strlen(const char *str);
    

    在使用strlen函数时,需要添加string.h头文件,该函数会将字符串长度计算出,不包含 ‘\0’。

    三、编写函数

    如果不想使用sizeof()和strlen(),可以利用循环来判断字符串的长度。

    int get_length(char str[])
    {
    	char *p = str;
    	int count = 0;
    	while (*p++ != '\0')
    	{
    		count++;
    	}
    	return count;
    }
    

    该函数通过传入一个字符串,返回一个长度数值。

    测试代码:
    #include <stdio.h>
    #include <string.h>
    
    int get_length(char str[])
    {
    	char *p = str;
    	int count = 0;
    	while (*p++ != '\0')
    	{
    		count++;
    	}
    	return count;
    }
    
    int main()
    {
    	char str[] = "abcd";
    	int count1 = sizeof(str);
    	int count2 = strlen(str);
    	int count3 = get_length(str);
    	printf("use sizeof the length is %d\n", count1);
    	printf("use strlen the length is %d\n", count2);
    	printf("use get_length the length is %d\n", count3);
    	return 0;
    }
    

    结果:
    在这里插入图片描述

    展开全文
  • C语言计算字符串长度的方法

    千次阅读 2020-04-02 18:04:53
    C语言计算字符串长度的方法 思路分析 字符串的结束标志是’\0’,因此计算字符串的长度的核心思想就是通过字符指针顺序检索每一个字符,直到检测到’\0’为止,以下是实现该算法的几种方式。 代码实现 1.用while循环...

    C语言计算字符串长度的方法

    思路分析

    字符串的结束标志是’\0’,因此计算字符串的长度的核心思想就是通过字符指针顺序检索每一个字符,直到检测到’\0’为止,以下是实现该算法的几种方式。

    代码实现

    1.用while循环实现

    #define _CRT_SECURE_NO_WARNINGS 1
    #include <stdio.h>
    #include<windows.h>
    
    int myStrlen(char* str)
    {
    	int count = 0;
    	while(*str != '\0')
    	{
    		count++;//记录字符串长度
    		str++;
    	}
    	return count;
    }
    int main()
    {
    	char arr[] = "bit";
    	int len= myStrlen(arr);
    	printf("%d\n", len);
    	system("pause");
    	return 0;
    }
    
    

    2.用递归实现

    #define _CRT_SECURE_NO_WARNINGS 1
    #include <stdio.h>
    #include<windows.h>
    
    int myStrlen( char *str)  
    {
    	if ((str == NULL) || (*str == '\0')) 
    	{
    		return 0;
    	}
    	else {
    		return myStrlen(str + 1) + 1}
    }
    int main()
    {
    	char arr[] = "bit";
    	int len= myStrlen(arr);
    	printf("%d\n", len);
    	system("pause");
    	return 0;
    }
    

    3.另一种递归实现

    #define _CRT_SECURE_NO_WARNINGS 1
    #include <stdio.h>
    #include<windows.h>
    #include <assert.h>
    int myStrlen(const char *str)  
    {
    	assert(str != NULL);
    	return *str ? (myStrlen(++str) + 1) : 0;
    }
    int main()
    {
    	char arr[] = "bit";
    	int len= myStrlen(arr);
    	printf("%d\n", len);
    	system("pause");
    	return 0;
    }
    
    
    展开全文
  • 主要介绍了C语言中计算字符串长度与分割字符串的方法,是C语言入门学习中的基础知识,需要的朋友可以参考下
  • C语言返回字符串函数共有四种方式,分别如下: 使用堆空间,返回申请的堆地址,注意释放 函数参数传递指针,返回该指针 返回函数内定义的静态变量(共享) 返回全局变量 下面来看看详细的介绍 其实就是要返回一...
  • 使用C语言获取字符串长度

    万次阅读 2018-10-21 16:41:06
    #include &... //strlen(字符数组名)计算字符串数组名 char text[50],connect[50]; int num; printf("输入一个字符串:\n"); scanf("%s",&amp;text); num = strlen(text);/...
  • c语言 判断字符串长度 实现

    千次阅读 2019-05-18 11:50:00
    首先明白答案的本质(该函数)是一个计数器该计数器用for循环来实现实现对一串字符串的计数字符串以空格开头 不计算空格 计算空格后的数字直到遇到\0结束。num计算器字符串不以空格结束 计算空格后的数字直到遇到\0...
  • C语言字符串长度的计算方法

    万次阅读 多人点赞 2018-08-16 20:39:04
    (1)计算字符串长度时关键是要注意辨认转义字符;(2)一个转义字符总是以反斜杠开始,再加一个其他字符组成。所以,遇到反斜杠时要特别注意!!! 1、不带转义字符的字符 如:“abc!x=/”,其长度为7 2、带转义...
  • C语言字符串长度的计算方法 (2009-07-07 15:45:47) 转载 标签 字符长度计算 c语言 教育 分类 细品COPY 提示(1)计算字符串长度时关键是要注意辨认转义字符(2)一个转义字符总是以反斜杠开始再加一个其他字符组成所以...
  • c语言字符串长度大小排序

    千次阅读 2020-01-17 16:51:51
    #include<stdio.h> #include<string.h> #include<math.h> #include<stdlib.h>... 对给定字符串长度大小升序排序。 */ char * str[SIZE]; for(int i = 0; i < S...
  • 先上代码 #include<stdio.h> #include<string.h> void main() { char str[] = "12345";... printf("%d",strlen...求字符串长度的方法一: 用strlen函数来求字符串的长度,前提是有头文件#include<stri
  • 可以通过字符数组或字符指针来定义字符串,也可以用宏定义对常量字符串进行定义。...//定义了一个字符数组string1,并进行初始化,使得其长度自动为13(字符串”prison break"中的字符个数加上结尾的'\0') ch...
  • C语言实现求字符串长度

    千次阅读 2019-01-05 16:38:25
    C语言实现strlen()求字符串长度。 用递归和循环的方法求 #include&lt;stdio.h&gt; #include&lt;stdlib.h&gt; int strlen_di(char arr[])//递归方法 { if (arr[0] == '\0') { ...
  • 两者都可以用来测量一个字符串长度,但实际上两者的测量结果是有区别的。这个区别取决于被测量对象的性质,先来看个实验。 int main(void) { char str_buff[3] = {"abc"}; printf("Test1, ...
  • C语言计算字符串长度的几种方法 C语言计算字符串长度,可以手动计算也可以使用库函数或者sizeof()操作符。 自定义函数求长度使用strlen()函数使用sizeof()操作符 自定义函数 int cont_str(char *s) { ...
  • #include <stdio.h> #define LENGTH 128 #define NUMBER 5 int main(void){ int i; char s[NUMBER][LENGTH]; for(i = 0;... puts("-----------打印字符串-----------"); for(i = 0; i <
  • “AB”这个字符串长度是多少呢? “AB”这个字符串的所占内存长度是多少? 赋值给字符数组后会不会改变呢? char a[] = “AB”; 那么a的字符长度是多少?a的内存长度是多少? 代码测试: char a[] = "AB"; int L...
  • C语言字符串数组的长度函数计算

    千次阅读 2020-03-08 10:49:24
    strlen():主要负责计算字符串长度。 (1)sizeof():数组占用字节除以数组类型所占字节,结果为数组元素个数 使用方法:sizeof(数组名)/ sizeof(数组类型名) (2)strlen():strlen,求字符串有效长度 ...
  • c语言】测量字符串长度

    千次阅读 2020-03-11 15:22:28
    思路: 需要调用<string.h>函数库 2-3-1-p14.c #include<stdio.h> #include<string.h> void main() { int length; char a[]="\\\"ABC\"\\"; length=strlen(a); printf("%d\n",length);......
  • /*遍历字符串,非ASCII字符读取2个字节,ASCII读取一个字节,获取字符串长度*/ int StrLenU(const char* string) { int len = 0 ; const char* p = string; while(*p++ != '\0') { if(*p > 0x80 || *p < 0) ...
  • 主要介绍了c语言输出字符串中最大对称子串长度的3种解决方案,需要的朋友可以参考下
  • 1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat(p, p1) 附加字符串 strncat(p, p1, n) 附加指定长度字符串 strlen(p) 取字符串长度 strcmp(p, p1) 比较字符串 strcasecmp忽略...
  • 基于C语言字符串长度计算问题的探讨.pdf
  • c语言字符串长度以及结束标志'\0'

    千次阅读 2019-07-02 08:31:54
    但是求字符串长度的函数strlen()只要遇见’\0’,就会返回函数值,’\0’不算在其中。所以返回值为10(空格也算一个字符)。 strlen(hello\0world):其中的字符串为“hello\0word”,而strlen函数遇到’\0’就代表...
  • c语言字符串详解

    千次阅读 多人点赞 2018-09-16 18:59:04
    c语言字符串的两种处理方式,c语言处理字符串一般使用字符数组来处理,记得加上结束符,否则会出现乱码。 1、通过字符数组来处理 #include &amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;gt; #include &...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 146,257
精华内容 58,502
关键字:

c语言表示字符串长度

c语言 订阅