C语言 文件流 *** 作段错误?!(UNIX环境)求助。。。

C语言 文件流 *** 作段错误?!(UNIX环境)求助。。。,第1张

其实你应该想想自己哪里写得不对,关键代码还是应该贴上,其中问题有很多种可能,

另外,段错误一般是不会出现在文件这里的,除非你传参严重有问题,段错误一般都是内存错误,文件错误不会报段错误的,据我所知,段错误只可能在以下两种情况下发生,

1.访问了未映射的内存地址

2.没有足够的内存访问权限(比如,程序试图修改内存的只读区域等)

个人觉得是你的问题

可以,可读取其他文件可以使用二进制模式。

让程序写入文件,首先应创建一个输出流ofstream流对象并与该文件关联,然后像使用cout一样使用该流对象,因为C++使用流来管理输入输出,当创建一个流对象时就为该对象分配一个缓冲区,创建两个流对象就分配两个缓冲区,标准的cout流是与显示屏相关联的,因此使用cout流将使内容输出到缓冲区,然后输出到显示屏上,而使用文件时就应该创建一个流以与要进行输入的文件相关联,这样当在给文件写入内容时,首先把内容写入到与文件关联的缓冲区中,然后再输出到文件中。具体步骤为:首先创建一个ofstream流对象,比如ofstream hy然后将该流对象与某文件关联起来,比如要使流对象hy与文件hyong.txt关联,则可以使用open函数,如hy.open(“hyong.txt”)或者使用构造函数将这两步合并为一步,比如ofstream hy(“hyong.txt”)其次向文件输入内容,像使用cout一样为文件输入内容,比如hy<<”wweeiii”即表示把内容输出到与流对象hy相关联的控制台中,这里与hy相关联的控制台是文件hyong.txt,即把字符串wweeii输入到与流hy关联的文件hyong.txt中。以上面这两种方法打开文件时,如果没有这样的文件将创建一个新文件,如果有这样的文件,则打开该文件并清空其内容。

35、要读取文件中的内容,和上面介绍的把程序写入文件一样,首先应创建一个输入流ifstream流对象并与要执行的文件相关联,然后像使用cin一样使用该流对象,输入与输出一样都将创建流的缓冲区。具体方法为创建流对象如ifstream hy1然后将该流对象与要执行的文件相关联,可以使用open函数,比如hy1.open(“hyong1.txt”)或将两句合并为一句,比如ifstream hy1(“hyong1.txt”),然后像使用cin这样使用流对象,比如char ch[33]hy1>>ch即表示把hy1关联的文件hyong1.txt中的内容输出到数组ch中。

36、文件的读写 *** 作,要让文件能同时进行读和写应使用fstream类,使用该类的方法和上面介绍的一样,首先应创建一个流对象并与要执行的文件相关联,然后就像使用cin或cout一样使用该对象。对于fstream对象来说将创建读出和写入两个缓冲区。

36、读取或写入指定目录的文件:例如ofstream hyhy.open(“D:\\\\hhh\\\\hyong.txt”)即表示把数据写入到D盘目录下的hhh文件夹中的文件hyont.txt中。这里要注意目录的路径表示要以\\\\双斜杠表示,因为在C++中第一个\\斜杠表示的是转义字符。还要注意的是程序只会创建文件不会创建文件夹,也就是说在把数据写入到文件时,其文件夹应已经存在

37、当输入和输出流对象过期时(如程序终止),则到文件的连接将自动关闭。当然也可以使用close函数显示地关闭流对象到文件的连接。比如hy.close();hy1.close()删除该连接并不会删除流对象,只是把流对象和文件之间的关联解除了,删除连接后流对象仍然存在,以后还可以将该流对象重新连接到该文件或者另一个文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12084732.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存