精华内容
下载资源
问答
  • 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

    展开全文
  • import math a=float(input("请输入直角边1的长度:")) b=float(input("清输入直角边2的长度:")) c=math.sqrt(a*a+b*b) print("斜边长为:",c)
    import math
    a=float(input("请输入直角边1的长度:"))
    b=float(input("清输入直角边2的长度:"))
    c=math.sqrt(a*a+b*b)
    print("斜边长为:",c)
    

     

    展开全文
  • C++输入未知长度的数组

    万次阅读 多人点赞 2019-06-23 18:33:07
    静态数组int array[10],它的长度必须是个常数才可以定义。如果知道数组长度n,可以先cin>>n;然后用动态数组int* array = new int[n]。但是如果不知道数组长度,该怎么定义呢? 经过查找资料,终于找到了一种...

    注意:该作者博客已迁移至https://buxianshan.xyz

    假如要输入一组数字进行排序,但是不知道有多少个数字

    静态数组int array[10],它的长度必须是个常数才可以定义。如果知道数组长度n,可以先cin>>n;然后用动态数组int* array = new int[n]。但是如果不知道数组长度,该怎么定义呢?

    经过查找资料,终于找到了一种解决方法。使用STL中的vector。

    STL

    STL是Standard Template Library的简称,中文名标准模板库。根本上说,STL是一些“容器”的集合,这些“容器”有 list, vector, set, map 等。STL的目的是标准化组件,这样就不用重新开发,可以使用现成的组件。STL是C++的一部分,因此不用安装额外的库文件。
    在C++标准中,STL被组织为下面的13个头文件:<algorithm>、<deque>、<functional>、<iterator>、<vector>、<list>、<map>、<memory>、<numeric>、<queue>、<set>、<stack>和<utility>。

    vector

    vector(向量):是一种顺序容器,事实上和数组差不多,但它比数组更优越。一般来说数组不能动态拓展,因此在程序运行的时候不是浪费内存,就是造成越界。而vector正好弥补了这个缺陷,它的特征是相当于可分配拓展的数组,它的随机访问快,在中间插入和删除慢,但在末端插入和删除快。

    简单用法:
    定义一个vector,元素为 int 型的容器array,可以简单理解为一个整型数组。

    vector<int> array;
    

    在它末尾添加一个数字

    array.push_back(number);
    

    返回数组长度

    array.size();
    

    所以输入未知长度的数组可以这样写:

    #include<iostream>
    #include<vector>//引入vector头文件
    using namespace std;
    int main() {
     vector<int> array;//定义一个vector数组array
     int number;
     while (1) {
      cin >> number;
      array.push_back(number);//每输入一个数字就把它添加到数组的最后
      if (cin.get() == '\n')//如果是回车符则跳出循环
       break;
     }
     int len = array.size();//返回数组长度为len
     //下面遍历一遍数组看看对不对
     for (int i = 0; i < len; i++) {
      cout << array[i] << endl;
     }
     return 0;
    }
    

    测试截图:
    在这里插入图片描述

    已经完成了输入和保存数组

    STL的<algorithm>库中也提供了很多排序算法,遍历vector也可以使用迭代器。总之STL集成了很多优秀的算法,熟悉使用可以提高开发效率。还有很多需要学习的东西。

    参考

    • https://www.cnblogs.com/SarahZhang0104/p/5749680.html
    • https://blog.csdn.net/lizhentao0707/article/details/82224807
    • https://www.cnblogs.com/aiguona/p/7228364.html
    • https://baike.baidu.com/item/STL/70103?fr=aladdin
    展开全文
  • 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') { ...

    C语言实现strlen()求字符串的长度。

    用递归和循环的方法求

    #include<stdio.h>
    #include<stdlib.h>
    
    int strlen_di(char arr[])//递归方法
    {
    	if (arr[0] == '\0')
    	{
    		return 0;
    	}
    	return 1 + strlen_di(arr + 1);
    }
    
    int strlen_xun(char arr[])//循环方法
    {
    	int i = 0;
    	while (arr[i] != '\0')
    	{
    		++i;
    	}
    	return i;
    }
    
    int main()
    {
    	char arr[] = "maze shi yige aixuexi de ren";//可自定义
    	printf("%d\n", strlen_xun(arr));
    	printf("%d\n", strlen_di(arr));
    
    	system("pause");
    	return 0;
    }
    

    在递归语句中有 return 1 + strlen_di(arr + 1);
    其中“arr+1”代表指针指向后一位,这个虽然是数组,在这里可以解释为指针。

    展开全文
  • Python计算字符串的长度

    万次阅读 2019-12-15 19:30:00
    在实际开发过程中,经常会有计算字符串长度的需求。 Python中用len()函数来计算字符串的长度 语法:len(str),其中str是目标字符串 示例: #计算字符串的长度 str1 = 'abcdefg' len_str1 = len(str1) print(len...
  • VARCHAR的最大长度、字符串类型选择,用MySQL的人中十之七八是不清楚的。网上文章鱼目混珠,以讹传讹居多。 本文不止介绍了原理,还提供了案例手把手教你自己分析,彻底解决你的疑惑
  • RSA密钥长度、明文长度和密文长度

    千次阅读 2019-10-10 11:27:41
    本文介绍RSA加解密中必须考虑到的密钥长度、明文长度和密文长度问题,对第一次接触RSA的开发人员来说,RSA算是比较复杂...
  • 关于java RSA密钥的长度问题

    千次阅读 2019-10-05 22:47:30
    最近在搞udp可靠通信(不单单是丢失重传),为了进行密钥传输学习一下密钥长度的一些知识,mark一下 java默认的rsa填充方案为RSA/ECB/PKCS1Padding 一般说的rsa密钥长度单位是bit,本文所有长度单位均为byte,除非...
  • C/C++ | 求数组长度 | 求字符串数组长度 | 求string类型长度; 数组长度 int arr[] = {1,2,3,4,5,6,7,8,9}; int length = 0; length = sizeof(arr) / sizeof(int); int arr[10]={0,0}; //这样的无法...
  • MySQL的varchar长度问题

    万次阅读 2019-09-11 17:21:35
    长度的区别,char范围是0~255,varchar最长是64k,但是注意这里的64k是整个row的长度,要考虑到其它的 column,还有如果存在not null的时候也会占用一位,对不同的字符集,有效长度还不一样,比如utf8的,最多21845...
  • 如果某个数据表里的数据行的长度是可变的,那么,为了节约存储空间,MySQL会把这个数据表里的固定长度类型的数据列转换为相应的可变长度类型.例外:长度小于4个字符的char数据列不会被转换为varchar类型 4 注意...
  • C语言0长度数组(可变数组/柔性数组)详解

    万次阅读 多人点赞 2017-03-20 19:37:26
    C语言0长度数组(可变数组/柔性数组)详解 CSDN GitHub C语言0长度数组(可变数组/柔性数组)详解 AderXCoding/language/c/zero_length_array 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议...
  • java编程输入一个长度未知的int数组

    万次阅读 2019-02-13 19:32:58
    java编程输入一个长度未知的int数组 思路:  java中可以直接输入字符串数组,但是输入int[] 数组时需要事先定义长度,但有些题目中的长度是可变的,不能事先固定数组长度。首先输入字符串的数组,中间用空格分隔,...
  • mysql 索引长度限制详解

    万次阅读 2018-03-27 22:36:47
    mysql 每个单表中对索引长度是有限制的,且根据不同的数据引擎会有所不同。 下面以mysql 5.5.47 版本为例做相应的说明。 MYISAM表 1、创建一个字符编码为utf8的表 test create table test(id int,name1 varchar...
  • 散列表查找失败平均查找长度

    千次阅读 多人点赞 2020-11-01 21:04:40
    要想知道 散列表查找失败的平均查找长度,就要知道什么叫做查找失败!举个栗子:8个数字 key%11 如下算好了: 散列地址 0 1 2 3 4 5 6 7 8 9 10 关键字 33 1 13 12...
  • 数据库中varchar类型 最大长度是多少?

    万次阅读 多人点赞 2019-10-09 20:57:00
    char是一种固定长度的类型,varchar则是一种可变长度的类型,它们的区别是: char(M)类型的数据列里,每个值都占用M个字节,如果某个长度小于M,MySQL就会在它的右边用空格字符补足.(在检索操作中那些填补出来的...
  • C 语言中关于通过形参传递数组的长度计算的一些思考 一 背景 学习 C 语言的过程中,计算数组的长度经常会碰到。在字符型的数组中我们可以使用 strlen() 来获取当前数组的长度,对于其他类型的数组,这个方法就不...
  • Oracle中varchar2类型的字段长度单位默认是按照byte来定义, 比如常见写法varchar2(10) 代表只接收最大10字节长度 这种定义情况下10字节只能插入3个汉字,(数字字母只占一字节,汉字占三字节) 如果插入4个汉字...
  • IP数据包长度

    千次阅读 2020-04-05 12:09:20
     UDP则与TCP不同,UDP包头内有总长度字段,同样为两个字节,因此UDP数据包的总长度被限制为65535,这样恰好可以放进一个IP包内,使得UDP/IP协议栈的实现非常简单和高效。65535再减去UDP头本身所占据的8个字节,UDP...
  • 2.两种限制方式(长度、字节数) 3.中文输入法下可正常使用,无BUG 4.同一页面可以使用多个,相互不干扰limit.js 复制代码 代码如下: function limit(){ var txtNote;//文本框 var txtLimit;//提示字数的input ...
  • MySQL 建表字段长度的限制

    千次阅读 2019-07-01 19:18:15
     varchar 字段是将实际内容单独存储在聚簇索引之外,内容开头用1到2个字节表示实际长度长度超过255时需要2个字节),因此最大长度不能超过65535。 b) 编码长度限制  字符类型若为gbk,每个字符最多占2个...
  • GET请求的长度限制

    千次阅读 2019-10-25 22:37:14
    最近在生产环境为上游服务提供了一个批量接口(dubbo接口),没有做长度的限制,造成我调用下游的http请求(GET请求)时由于长度(大概9000+个字符)超过了限制,造成直接返回400 Bad Request,影响了上游服务的使用...
  • char 定长 最多255字符 末尾的空格会被默认删除 何时选用char类型储存?...在字符长度不超过255时 使用一个字节存储长度 超过255时用两个字节存储长度 每行的varchar总和不得超过65535字节 ...
  • C语言编程之求字符串长度

    千次阅读 2019-03-10 15:20:32
    问题描述:请使用C语言编写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。 程序源码: #include&lt;stdio.h&gt; int main() { int len; char *str[20]; printf("please ...
  • 因为哈夫曼树的特殊性质,我们在求最小总长度、WPL、长度均值的时候,均不采用建树法. 方向:哈夫曼树的编码长度等于各个叶节点权值与路径长度乘积之和,同时这个值等于非叶节点之和。 非叶节点的权值之和=路径叶...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,531,510
精华内容 1,412,604
关键字:

长度