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

随风云25元/月 ,德阳高防云服务器 2核2G 10M 75元/月 内蒙古三线BGP服务器 2核2G 5M

公司介绍成都随风云科技有限公司成立于2021年,是国内领先的互联网业务平台服务提供商。公司专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前公司研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务,拥有丰富的国内BGP、双线高防、香港等优质的IDC资源。公司一直秉承”以人为本、客户为尊、永续创新&...

无忧云(25元/月),国内BGP高防云服务器 2核2G5M

无忧云官网无忧云怎么样 无忧云服务器好不好 无忧云值不值得购买 无忧云,无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免北岸建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高...

易速互联月付299元,美国独立服务器促销,加州地区,BGP直连线路,10G防御

易速互联怎么样?易速互联是国人老牌主机商家,至今已经成立9年,商家销售虚拟主机、VPS及独立服务器,目前商家针对美国加州萨克拉门托RH数据中心进行促销,线路采用BGP直连线路,自带10G防御,美国加州地区,100M带宽不限流量,月付299元起,有需要美国不限流量独立服务器的朋友可以看看。点击进入:易速互联官方网站美国独立服务器优惠套餐:RH数据中心位于美国加州、配置丰富性价比高、10G DDOS免...

fclose为你推荐
weakhashmapWeakHashMap和HashMap的区别tvosTVOS推广怎么样?数秦科技天津数沃科技公司怎么样?待遇和发展如何?有人知道么?spawning在c语言编译时出现Error spawning cl.exe,是怎么回事?radius认证电信或网通的RADIUS认证都记录些什么?谁能说说ISP的宽带帐号检查流程ruby语言公司实习让我学习RUBY语言,不知道RUBY语言发展前景怎么样,值不值的去学习。cf加速器玩CF需要用加速器吗?什么是SOA什么是cookies 有什么作用clamwin杀毒软件ClamWin有用吗?有没有主动防御的?滚动条颜色DIV怎么添加滚动条,怎么改变滚动条的颜色、。
虚拟主机排名 备案域名 域名注册使用godaddy xenvps 域名服务器的作用 花生壳域名贝锐 华为云服务 星星海 国外服务器网站 火车票抢票攻略 debian源 ibrs 牛人与腾讯客服对话 河南服务器 美国十次啦服务器 华为云盘 360云服务 空间购买 上海电信测速 购买空间 更多