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; }文件会成功被删除。

raksmart:年中大促,美国物理机$30/月甩卖;爆款VPS仅月付$1.99;洛杉矶/日本/中国香港多IP站群$177/月

RAKsmart怎么样?RAKsmart发布了2021年中促销,促销时间,7月1日~7月31日!,具体促销优惠整理如下:1)美国西海岸的圣何塞、洛杉矶独立物理服务器低至$30/月(续费不涨价)!2)中国香港大带宽物理机,新品热卖!!!,$269.23 美元/月,3)站群服务器、香港站群、日本站群、美国站群,低至177美元/月,4)美国圣何塞,洛杉矶10G口服务器,不限流量,惊爆价:$999.00,...

3C云1核1G 9.9元 4核4G 16元 美国Cera 2核4G 24元

3C云互联怎么样?3C云互联专注免备案香港美国日本韩国台湾云主机vps服务器,美国高防CN2GIA,香港CN2GIA,顶级线路优化,高端品质售后无忧!致力于对互联网云计算科技深入研发与运营的极客共同搭建而成,将云计算与网络核心技术转化为最稳定,安全,高速以及极具性价比的云服务器等产品提供给用户!专注为个人开发者用户,中小型,大型企业用户提供一站式核心网络云端服务部署,促使用户云端部署化简为零,轻松...

ManSora:英国CN2 VPS,1核/1GB内存/10GB SSD/1TB流量/100Mbps/KVM,$18.2/月

mansora怎么样?mansora是一家国人商家,主要提供沪韩IEPL、沪日IEPL、深港IEPL等专线VPS。现在新推出了英国CN2 KVM VPS,线路为AS4809 AS9929,可解锁 Netflix,并有永久8折优惠。英国CN2 VPS,$18.2/月/1GB内存/10GB SSD空间/1TB流量/100Mbps端口/KVM,有需要的可以关注一下。点击进入:mansora官方网站地址m...

fclose为你推荐
fclosefclose / fopen网关和路由器的区别网关和路由器的具体区别在哪里呀?拓扑关系什么是空间数据的拓扑关系layout_gravityandroid 布局中 为什么能够通过android:layout_above 、android:layout_alignTop 、等 还要在之前加入slideshare幻灯片的占位符的作用是?备忘录模式Java中常用的设计模式有哪些?请详细说明一下工厂模式。arc是什么意思arcsin中arc是什么的缩写? 怎么读? ?丁奇请全面剖析一下黑胡子丁奇这个人物。smartupload为什么使用smartupload执行上传保存操作时用这句smart.save("upload")失败用smart.save("/upload")成功欢迎页面如何设置电脑的欢迎界面?
台湾虚拟主机 5折 awardspace 免备案cdn 流媒体服务器 193邮箱 服务器硬件防火墙 ca187 lamp架构 免费蓝钻 云销售系统 .htaccess 德国代理ip 赵蓉 免费php空间申请 百度空间登陆首页 web服务器下载 ibm服务器机柜 电脑主机内部结构 彩虹云点播点点版 更多