2014-03-09
展开全部
您好!这两种文件从本质上讲都是2进制文件,毕竟计算机只能存储2进制文件。
但是我们为什么会有所谓的ASCII文件和2进制文件呢?关键就在数据的存放形式。
例如:一个整形数据,占用4个字节,也就是从0x0000000-0xffffffff。而对于ASCII文件,里面的每个字节都是ASCII码,虽然是2进制,但是只能存放一个字符。
例如:你上面的一个整数100000,用2进制存储4个字节,用ASCII文件存储有多少位就有多少字节,像你举的这个整数需要6个字节。而像我们的记事本打开ASCII码文件就能直接显示出来。而2进制文件读出来是乱码。而且从你敲键盘就有扫描码转到ASCII码的过程,但凡要显示的字符都是ASCII码或者UNICODE码。
这两种文件的关键在于你的需要。不知道我的解决怎样。我初学C++时大概编了一两千行的程序才真正了解它,现在是编了2万行的程序,从这样的角度切入,我尽量讲得通俗,不知道您是否能理解?^-^
但是我们为什么会有所谓的ASCII文件和2进制文件呢?关键就在数据的存放形式。
例如:一个整形数据,占用4个字节,也就是从0x0000000-0xffffffff。而对于ASCII文件,里面的每个字节都是ASCII码,虽然是2进制,但是只能存放一个字符。
例如:你上面的一个整数100000,用2进制存储4个字节,用ASCII文件存储有多少位就有多少字节,像你举的这个整数需要6个字节。而像我们的记事本打开ASCII码文件就能直接显示出来。而2进制文件读出来是乱码。而且从你敲键盘就有扫描码转到ASCII码的过程,但凡要显示的字符都是ASCII码或者UNICODE码。
这两种文件的关键在于你的需要。不知道我的解决怎样。我初学C++时大概编了一两千行的程序才真正了解它,现在是编了2万行的程序,从这样的角度切入,我尽量讲得通俗,不知道您是否能理解?^-^
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询