免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 6166 | 回复: 12
打印 上一主题 下一主题

[C++] [求教]windows下编程时,char*都是\0结尾的吗,但是linux下好像就不同了吧? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-09-22 21:27 |只看该作者 |倒序浏览
windows下编程时,char*都是\0结尾的吗,但是linux下好像就不同了吧?
我见到的数据是这样的:
03 31 32 33 74 00
先是字符串的长度,然后是内容,结尾居然是74 00 ( t .)
是因为linux就这样存储字符,还是因为该应用是java开发的,java 的字符串类型是这么存放数据的吗?

论坛徽章:
0
2 [报告]
发表于 2008-09-22 21:47 |只看该作者

回复 #1 LIPPER 的帖子

c 的字符串编码是0结尾的。
delphi 有一种字符串类型不是0结尾的,规则是:前2/4个字节是字符串长度。具体类型忘了

论坛徽章:
0
3 [报告]
发表于 2008-09-22 21:53 |只看该作者
数据肯定是java程序出的

论坛徽章:
0
4 [报告]
发表于 2008-09-22 21:56 |只看该作者
就是觉得处理起来挺费力的,得专门编函数处理,如果知道根本原因的话可以找来专门的介绍看下吗?

论坛徽章:
0
5 [报告]
发表于 2008-09-22 22:15 |只看该作者
原帖由 LIPPER 于 2008-9-22 21:27 发表
windows下编程时,char*都是\0结尾的吗,但是linux下好像就不同了吧?
我见到的数据是这样的:
03 31 32 33 74 00
先是字符串的长度,然后是内容,结尾居然是74 00 ( t .)
是因为linux就这样存储字符,还 ...

不管啥编程 只要是ansi c 都一样

论坛徽章:
0
6 [报告]
发表于 2008-09-22 22:33 |只看该作者
原帖由 blizzard213 于 2008-9-22 22:15 发表

不管啥编程 只要是ansi c 都一样

支持

论坛徽章:
0
7 [报告]
发表于 2008-09-23 11:21 |只看该作者
orz
统一的c,cpp标准

论坛徽章:
0
8 [报告]
发表于 2008-09-23 20:03 |只看该作者
原帖由 LIPPER 于 2008-9-22 21:27 发表
windows下编程时,char*都是\0结尾的吗,但是linux下好像就不同了吧?
我见到的数据是这样的:
03 31 32 33 74 00
先是字符串的长度,然后是内容,结尾居然是74 00 ( t .)
是因为linux就这样存储字符,还 ...

ansi c的标准里边有

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
9 [报告]
发表于 2008-09-23 20:18 |只看该作者
LZ要搞清楚一个概念,char *并不一定就用来表示字符串。也可以只代表有符号的char型数据。至于存什么样的数据,就看实际需求了。

不要一看到char *就把它想成字符串,然后考虑以什么结尾。

论坛徽章:
0
10 [报告]
发表于 2008-09-23 21:10 |只看该作者
原帖由 Godbach 于 2008-9-23 20:18 发表
LZ要搞清楚一个概念,char *并不一定就用来表示字符串。也可以只代表有符号的char型数据。至于存什么样的数据,就看实际需求了。

不要一看到char *就把它想成字符串,然后考虑以什么结尾。

对头,注意语义,'\0'只有对C字符串才有意义,比如strlen()之类的函数。

我指一段内存的话,管它存什么数据呢。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP