c语言中strlen()与sizeof()问题?

如题所述

问题1:
不是字符串存储在一个字节里而是char*
ss指向的是字符串的第一个字节,而你sizeof()内的参数正好是指针所指的那块空间的地址所以是一个字节
问题2:
在c语言中,strlen()的形参是指针,而你的实参s3中并没有结束符\0所以指针不会认为结束,所以长度不能确定
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-01-31
问题一:
sizeof()计算时是计算这个变量用几个字节存储,int
a;sizeof(a)为2
问题二:
一般用strlen函数时,括号里面的内存是一个字符串的地址,字符串的末尾是以‘\0’结尾

在C语言求字符长度的问题,strlen与sizeof怎么计算出来的长度不是我们...
sizeof(p)计算的是p变量的大小 由于p是指针,p的大小就是4字节,它不是求内容的长度,而是变量p本身的大小 同理q指针也一样 你可以试一下将指针指向的内容长度再增长,sizeof(p)仍然是4 字符指针:分配长度用strlen计算后+1 如果算数组分配长度(数组声明时的空间大小,不管字符数组是否填满)用size...

C语言中strlen()函数和sizof()函数分别怎么用?区别是什么
sizeof(arr)\/sizeof(a)\/sizeof(str)都是可以的,但是只能使用strlen(str),而不能strlen(arr);2、区别:2.1 sizeof()是C语言中判断数据类型或者表达式长度符;不是一个函数,字节数的计算在程序编译时进行,而不是在程序执行的过程中才计算出来。2.2 strlen()求得方法是从开始到遇到第一个'\\...

strlen和sizeof的区别
strlen和sizeof在C语言中都是常用的函数,区别在于它们的用途、返回值和计算方式。sizeof是一个运算符,而strlen是一个函数。sizeof用于计算数据类型或变量的大小,而strlen用于计算字符串的长度。sizeof可以计算类型或变量的长度,而strlen只能用于字符串。当sizeof用于类型或变量时,它返回的是该类型或变...

sizeof和strlen的区别
sizeof和strlen是两个不同的C语言函数,主要有以下区别:1. 作用对象不同:sizeof是用于计算数据类型的大小,而strlen是用于计算字符串的长度。2. 参数类型不同:sizeof可以计算任意数据类型的大小,包括基本数据类型、结构体、数组、指针等等,而strlen只能计算以空字符'\\\\0'结尾的字符串的长度,即字符...

C语言中sizeof和strlen函数区别在哪?
strlen(char*)函数求的是字符串的实际长度,它求得方法是从开始到遇到第一个'\\0',如果你只定义没有给它赋初值,这个结果是不定的,它会从aa首地址一直找下去,直到遇到'\\0'停止。而sizeof()返回的是变量声明后所占的内存数,不是实际长度。2、参数类型 sizeof可以用类型做参数,strlen只能用char...

c语言sizeof和strlen的区别是什么?
一、指代不同 1、sizeof:用于获取字符串的长度,是处理字符串的重要工具。2、strlen:所作的是一个计数器的工作。二、规则不同 1、sizeof:可用于任何变量名、类型名或常量值,当用于变量名(不是数组名)或常量时,不需要用圆括号。2、strlen:从内存的某个位置(可以是字符串开头,中间某个位置...

C语言中,sizeof和strlen都是表示字符串长度的吗?谁能告诉我它们两者的区...
sizeof 计算的是数据在内存中存放的长度,单位是“字节”,可以对任何数据类型做运算,而且它是一个运算符(和+、-、*、\\类似);当对字符串计算时,包含末尾的"\\0";当对字符数组操作时,返回的是数组的总的长度,也就是当把数组作为参数传递给sizeof时是不会退化的。strlen 计算的是字符串的...

strlen和sizeof的区别
含义上有不同,一个为运算符号、另一个为函数表达。在学生们学习strlen和sizeof 的时候,经常会搞混两者,导致出现错误,实际上两者有不同的含义,就拿sizeof来讲,它是运算符号,当遇到c语言中运算符号的时候就需要考虑到它。而strlen则是函数,有不同的用法。

C语言中sizeof和strlen函式区别在哪?
C语言中sizeof和strlen函式区别在哪? 一、sizeof sizeof(...)是运算子,在标头档案中typedef为unsigned int,其值在编译时即计算好了,引数可以是阵列、指标、型别、物件、函式等。 它的功能是:获得保证能容纳实现所建立的最大物件的位元组大小。 由于在编译时计算,因此sizeof不能用来...

C语言问题
Sizeof与Strlen的区别与联系(转)1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。2.sizeof是算符,strlen是函数。3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\\0''结尾的。sizeof还可以用函数做...

相似回答