标准I/O 与 文件I/O

时间:2021-03-06 14:13:20
各位大侠,请问 1 标准I/O与文件I/O有什么区别?
               2 linux 如何只起一个进程?

10 个解决方案

#1


文件io针对的是文件,标准io是对控制台,对应不同的API。但是选择文件还是标准控制台是有什么决定的?比如我们调试个板卡都要有人机交互,是不是就必须用控制台?文件IO可以用来保存log文件。可以这样理解吗?

#3


1不是很明白意思,估计标准的就是c库吧,文件的就是系统调用了。
2fork吧、

#4


引用 3 楼 yunyun050924 的回复:
1不是很明白意思,估计标准的就是c库吧,文件的就是系统调用了。
2fork吧、


补充,标准IO以文件流的方式,以文件指针来获取;文件IO是系统调用,不过也是通过调用库函数来实现的;

只起一个进程,一个可执行文件不就是一个进程么,只要其中不fork进程,楼主只起一个进程什么意思?

#5


引用 4 楼 wind_runner 的回复:
引用 3 楼 yunyun050924 的回复:
1不是很明白意思,估计标准的就是c库吧,文件的就是系统调用了。
2fork吧、


补充,标准IO以文件流的方式,以文件指针来获取;文件IO是系统调用,不过也是通过调用库函数来实现的;

只起一个进程,一个可执行文件不就是一个进程么,只要其中不fork进程,楼主只起一个进程什么意思?


不好意思,这是一次面试中被这样问到,想在帖子里跟大家讨论一下!我理解为整个系统只起一个进程,我以为那个面试官要”裸奔“呢,当单片机跑,但是他轻蔑的冲我笑了笑,什么也不说了,我就无语了,当时只想跟他母亲有身体接触。

#6


楼主是不是没讲完整?同时面试题应该有考点才对。
你的意思应该是“标准文件IO”与“文件IO”的区别吧。
前者是C库函数,后者是系统调用。
前者会做一些附加处理,例如缓存IO操作的数据;后者不带缓存。
所以如果你用文件"read"功能每次读一个字节,读1MB的总数的话,那fread和read的所花的时间就有数量级的区别了。

#7


看来只是面试官在显摆。 

#8


恩,学习了

#9


LZ这句话"当时只想跟他母亲有身体接触。"   笑死我了。。

#10


我的理解是:标准函数库与普通函数库的区别

#1


文件io针对的是文件,标准io是对控制台,对应不同的API。但是选择文件还是标准控制台是有什么决定的?比如我们调试个板卡都要有人机交互,是不是就必须用控制台?文件IO可以用来保存log文件。可以这样理解吗?

#2


#3


1不是很明白意思,估计标准的就是c库吧,文件的就是系统调用了。
2fork吧、

#4


引用 3 楼 yunyun050924 的回复:
1不是很明白意思,估计标准的就是c库吧,文件的就是系统调用了。
2fork吧、


补充,标准IO以文件流的方式,以文件指针来获取;文件IO是系统调用,不过也是通过调用库函数来实现的;

只起一个进程,一个可执行文件不就是一个进程么,只要其中不fork进程,楼主只起一个进程什么意思?

#5


引用 4 楼 wind_runner 的回复:
引用 3 楼 yunyun050924 的回复:
1不是很明白意思,估计标准的就是c库吧,文件的就是系统调用了。
2fork吧、


补充,标准IO以文件流的方式,以文件指针来获取;文件IO是系统调用,不过也是通过调用库函数来实现的;

只起一个进程,一个可执行文件不就是一个进程么,只要其中不fork进程,楼主只起一个进程什么意思?


不好意思,这是一次面试中被这样问到,想在帖子里跟大家讨论一下!我理解为整个系统只起一个进程,我以为那个面试官要”裸奔“呢,当单片机跑,但是他轻蔑的冲我笑了笑,什么也不说了,我就无语了,当时只想跟他母亲有身体接触。

#6


楼主是不是没讲完整?同时面试题应该有考点才对。
你的意思应该是“标准文件IO”与“文件IO”的区别吧。
前者是C库函数,后者是系统调用。
前者会做一些附加处理,例如缓存IO操作的数据;后者不带缓存。
所以如果你用文件"read"功能每次读一个字节,读1MB的总数的话,那fread和read的所花的时间就有数量级的区别了。

#7


看来只是面试官在显摆。 

#8


恩,学习了

#9


LZ这句话"当时只想跟他母亲有身体接触。"   笑死我了。。

#10


我的理解是:标准函数库与普通函数库的区别