在C中打开文件描述符

use*_*772 0 c file-descriptor

我有客户端 - 服务器应用程序.服务器在C.服务器具有以下结构:

int main (... ) {
FILE * fp;
fp = fopen("serverLog.log","w");


//init variables
//bind server
//listen server on port
  while(1) {
  //some code
  //accept
  //some code
  int check = pthread_create(&thread, NULL, handle_client,&ctx);

  } 
 fclose(fp);
 return EXIT_SUCCSESS;
}
Run Code Online (Sandbox Code Playgroud)

我运行服务器,并使用CTRL + C关闭服务器.filedescriptor fd会发生什么?我想,它保持开放.如果是,我该怎么办?谢谢

Ben*_*ell 5

不,它将被操作系统关闭.当您的进程退出时(无论是干净还是强制),内核将清理所有悬空手柄.