fclose为什么fclose之后remove还是不成功

fclose  时间:2021-07-01  阅读:()

C语言中,用fopen打开程序了程序,结束时为什么要用fclose关闭?

fclose有两个作用: 1. 将输出缓冲区内容写到存储设备上 2. 释放对应的资源 如果不调用fclose,相应地,可能会造成 1. 对文件的更改没有被记录到磁盘上 2. 其他进程无法存取该文件 中的一种或者多种后果。

因此对应fopen地调用fclose是必要的

C语言中如何用fclose关闭一个文件?

你是想关闭一个已打开用来读/写的文件,还是想关闭一个正在运行的程序? 我写了一个结束进程的程序,你看看能不能用。

#include <windows.h> #include <tlhelp32.h> #define PROCESS_NAME "noname.exe" //在这里定义你要结束的进程名 void main() { int foundProcess = 0; PROCESSENTRY32 pe32 = {sizeof(PROCESSENTRY32)}; HANDLE hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); // 在进程列表中搜索,目的是为了得到对应进程的PID。

if (Process32First(hProcessSnap, &pe32)) { do { if(strcmp(PROCESS_NAME, pe32.szExeFile) == 0) { foundProcess = 1; break; } }while(Process32Next(hProcessSnap, &pe32)); } CloseHandle(hProcessSnap); if(foundProcess) { HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID); //通过PID连接到进程 if (hProcess) { if(TerminateProcess(hProcess, 0)) //结束进程 { MessageBox(NULL, "成功结束进程 ","结束进程",MB_OK|MB_ICONASTERISK) ; } else { MessageBox(NULL, "无法结束进程 ","结束进程",MB_OK|MB_ICONASTERISK) ; } CloseHandle(hProcess) ; } } else { MessageBox(NULL, "无法找到进程 ","结束进程",MB_OK|MB_ICONASTERISK) ; } }

C语言中 fclose(fp) 啥意思

fclose是C语言标准库中的一个函数,功能是关闭一个流。

  函数原型:int fclose(FILE *stream);   如果流成功关闭,fclose 返回 0,否则返回EOF(-1)。

  如果流为NULL,而且程序可以继续执行,fclose设定error number给EINVAL,并返回EOF。

为什么fclose之后remove还是不成功

进程在占用那个文件,只有那个进程能删。

比如你的程序fclose之后,调用函数删除,是可以成功删除的。

#include <stdio.h> int main(){ FILE *fp; fp = fopen("file", "r+"); fclose(fp); remove("file"); return 0; }文件会成功被删除。

tmhhost:暑假快乐,全高端线路,VPS直接8折,200G高防,美国gia日本软银韩国cn2香港cn2大带宽

tmhhost为2021年暑假开启了全场大促销,全部都是高端线路的VPS,速度快有保障。美国洛杉矶CN2 GIA+200G高防、洛杉矶三网CN2 GIA、洛杉矶CERA机房CN2 GIA,日本软银(100M带宽)、香港BGP直连200M带宽、香港三网CN2 GIA、韩国双向CN2。本次活动结束于8月31日。官方网站:https://www.tmhhost.com8折优惠码:TMH-SUMMER日本...

hostodo:美国大流量VPS,低至$3,8T流量/月-1.5G内存/1核/25gNVMe/拉斯维加斯+迈阿密

hostodo从2014年年底运作至今一直都是走低价促销侧率运作VPS,在市场上一直都是那种不温不火的品牌知名度,好在坚持了7年都还运作得好好的,站长觉得hostodo还是值得大家在买VPS的时候作为一个候选考虑项的。当前,hostodo有拉斯维加斯和迈阿密两个数据中心的VPS在促销,专门列出了2款VPS给8T流量/月,基于KVM虚拟+NVMe整列,年付送DirectAdmin授权(发ticket...

UCloud:全球大促降价,云服务器全网最低价,1核1G快杰云服务器47元/年

ucloud:全球大促活动降价了!这次云服务器全网最低价,也算是让利用户了,UCloud商家调低了之前的促销活动价格,并且新增了1核1G内存配置快杰型云服务器,价格是47元/年(也可选2元首月),这是全网同配置最便宜的云服务器了!UCloud全球大促活动促销机型有快杰型云服务器和通用型云服务器,促销机房国内海外都有,覆盖全球20个城市,具体有北京、上海、广州、香港、 台北、日本东京、越南胡志明市、...

fclose为你推荐
firstname中国人填资料时,first name是名还是姓?洗牌算法c语言编程用扑克牌洗牌和发牌知识库管理系统急求一款电子文档管理系统,有好用的推荐下~?策略组简述组策略的概念 急急急数秦科技安徽数智通科技有限公司怎么样?色库赤峰中色库博红烨锌业有限公司就是冶炼厂在 赤峰的 什么地方,一 人知道吗???数据分析报告范文数据分析报告怎么写图片存储怎么设置图片的保存类型qq号码查询知道qq怎样查手机号码文件系统类型常见的文件类型有哪几种?
泛域名 台湾服务器 z.com 圣迭戈 网站监控 灵动鬼影 福建天翼加速 100x100头像 双拼域名 阿里校园 广州服务器 免费phpmysql空间 东莞服务器 上海服务器 raid10 阿里云免费邮箱 什么是web服务器 英雄联盟台服官网 电信网络测速器 个人免费邮箱 更多