社区
C语言
帖子详情
关于sizeof 和 strlen 的问题? 谢谢!
DaneWoo
2002-08-29 02:41:20
#include <iostream.h>
#include <string.h>
void main()
{
char* s1="helloworld";
int nLens1=sizeof s1;
int nLens12=strlen(s1);
cout<<nLens1<<","<<nLens12<<endl;
}
为何在VC6.0中的输出结果是 4,10?究竟 sizeof() 和 strlen()有何不同?
...全文
24
9
打赏
收藏
关于sizeof 和 strlen 的问题? 谢谢!
#include #include void main() { char* s1="helloworld"; int nLens1=sizeof s1; int nLens12=strlen(s1); cout<<nLens1<<","<<nLens12<<endl; } 为何在VC6.0中的输出结果是 4,10?究竟 sizeof() 和 strlen()有何不同?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
step_by_step
2002-08-30
打赏
举报
回复
to stidio_zhougang(回头是岸)
系统会给字符串常量自己加上去的。不明白的话看我改写的那个程序。
sdx_none
2002-08-29
打赏
举报
回复
机器字长为32位。
1。因为数据类型的长度=SIZEOF(******),sizeof(s1)就是char型指针的长度,就是4
2。字符串的长度=strlen(******),所以strlen(s1)是字符串的长度,当然是10了。
stidio_zhougang
2002-08-29
打赏
举报
回复
TO:step_by_step(脚印)
不要忘了s1后面还有一个'\0',而用strlen()则不把这个算在内。
flyaramy
2002-08-29
打赏
举报
回复
没啥说的了!同意上边的兄弟
step_by_step
2002-08-29
打赏
举报
回复
看下面这段程序你会理解的更透彻
#include <iostream.h>
#include <string.h>
void main()
{
char s1[]="helloworld";//注意这一句和上一个程序的差别!!
int nLens1=sizeof s1;
int nLens12=strlen(s1);
cout<<nLens1<<","<<nLens12<<endl;
}
结果就不一样了,是
11,10
blh
2002-08-29
打赏
举报
回复
sizeof 适用于计算变量的存储空间,它的值在编译期间已经计算,sizeof(p) p为指针,在32位系统中指针长4字节,所以为4
不能时使用sizeof计算字符串的长度
但可以使用sizeof计算数组的长度度如
int s3[]={1, 2, 3, 4, 5, 6, 7};
int nLens13=sizeof(s3) / sizeof(int);
nLens13 = 7
Kklee
2002-08-29
打赏
举报
回复
情况就是楼上几位兄弟说的这样
blue_coco
2002-08-29
打赏
举报
回复
sizeof 是求一个数据类型的大小。
eg: sizeof (int), sizeof (char), sizeof (struct).....
strlen 是求字符串的长度。
sizeof s1 相当于求指针的大小,当然是4
strlen 是长度。
darkelf
2002-08-29
打赏
举报
回复
呵呵,不管是VC,任何一个编译器输出都是这样的,机器字长为32位的
因为sizeof(s1)就是指针的长度,就只有4
而strlen(s1)是字符串的长度,当然是10了。
sizeof
和
strlen
的区别
sizeof
和
strlen
经常被大家拿来作对比,但是他们之间的区别还是很大的。 一、定义不同:
sizeof
是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 ...
C语言中
sizeof
与
strlen
区别
sizeof
和
strlen
有本质上的区别。
sizeof
是C 语言的一种单目运算符,如++、–等,并不是函数,
sizeof
的优先级为2 级,比/、% 等3 级运算符优先级高,
sizeof
以字节的形式给出操作数的存储空间的大小。而
strlen
是...
sizeof
和
strlen
的区别及使用详解
首先我们来看一下
sizeof
和
strlen
的区别:
sizeof
操作符的结果类型为size_t(The
sizeof
keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). ...
C++编程语言中
sizeof
和
strlen
介绍
本文主要介绍 C++ 编程语言中
sizeof
和
strlen
的相关知识,同时通过示例代码介绍
sizeof
和
strlen
的用法和作用。 1
sizeof
与
strlen
的比较
sizeof
是 C++ 编程语言的一个运算符,而
strlen
是一个函数(头文件...
关于
sizeof
和
strlen
!!!
关于
sizeof
和
strlen
!!!已知 char *str1="absde"; char str2[]="absde"; char str3[8]={'a',}; char ss[] = "0123456789"; 为什莫
sizeof
(str1)=4
sizeof
(str2)=6;
sizeof
...
C语言
69,371
社区成员
243,081
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章