首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

内容是一个字母的文件的大小为2字节

2012-09-06 
内容是1个字母的文件的大小为2字节?linux环境。新建空白,0字节;打开,写个数字1,保存退出,大小为2.命令:xxd

内容是1个字母的文件的大小为2字节?
linux环境。
新建空白,0字节;
打开,写个数字1,保存退出,大小为2.
命令:xxd test
0000000: 310a 1.

疑问,

我的想法是,linux下 <CTRL+D> 在行首才代表EOF,于是数字1后面由系统补上1字节的换行符,接着再补上 1字节 的EOF。
大小为3。

事实上是,只补了个换行,这样我就搞不清楚到底怎么回事了。

谢谢知道的前辈朋友讲解下。谢谢了!

[解决办法]
EOF不存在文件中。。。
[解决办法]
0a是换行符(还是回车符,有点记不清了),这是因为你每行都有一个这样的标识,如果你换行后有2行字符,则第一行则必然同时包括 换行符 和 回车符,也就是比预想的要多2个字节,只有一行的话,那是要多一个字符的。就是换行符(或者回车符)
[解决办法]

探讨

EOF不存在文件中。。。

[解决办法]
Linux下vi编辑一个文件后并保存后,会保证最后一个字符是0x0a,也就是保证文件以换行符结尾。
[解决办法]
探讨

2l:那程序是怎么检测EOF的,难道是操作系统检测到后补上的?
3l:内容我知道,我想问为什么。
谢谢了。

[解决办法]
探讨Linux为什么要自动添加0x0a上去呢?

[解决办法]
推荐使用WinHex软件查看文件或内存中的原始字节内容。

[解决办法]
探讨
还是有问题,Linux为什么要自动添加0x0a上去呢?

热点排行