0

是否可以在已打开但未关闭的 fopen () 命令中使用 fopen () 函数打开文件?如果我确实需要这样做,那会产生什么后果?

样本: 。. .

l_file_ptr = fopen (l_inp_file, "r");
if (l_file_ptr == 0)  fatal_err("Could not open l_inp_file", -1);
    for (n_sph = 0; n_sph < num_sph; n_sph++) 
    {
       sph = &objects[n_sph];
       fscanf (l_file_ptr, "%d %le", &sph->num_surface_node, &sph->r_c);

       sph->surfnode = (struct nodalpoint *) calloc(num_sursph, sizeof(*(sph->surfnode)));
          if (sph->surfnode == 0 ) fatal_err("cannot allocate boundary nodes", -1);
            file_ptr = fopen (s_inp_file, "r");
            if(file_ptr == 0)  fatal_err("Could not open s_inp_file", -1);
               for (n_surp = 0; n_surp < num_sursph; n_surp++)   
               {
               fscanf (file_ptr, "%le",&sph->surfnode[n_surp].x);
               }
            fclose (file_ptr);
            file_ptr = 0;
   }
   fclose (l_file_ptr);
   l_file_ptr = 0;

按照我的这部分代码,我发现信息没有正确传输。我的猜测:你这可能是缓冲区或嵌套文件打开过程的问题。

谢谢!

4

0 回答 0