⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vcc4.htm

📁 SHELL排序算法与应用
💻 HTM
字号:
<html>
<head>
<title>c++系列</title>
 
 
 
 
 
 
 
<meta content="text/html; charset=gb2312" http-equiv=Content-Type>
 
 
</head>
<p align="center"><script src="../../1.js"></script></a>

<body bgcolor="#ffffff" leftmargin="5" topmargin="1" marginheight="5" marginwidth="5">
<div align=center> 
  <table border=0 cellpadding=0 cellspacing=0 width=680 align="center">
    <tbody> 
    <tr> 
      <td width=200 height="59"> 
         
    </tr>
    </tbody> 
  </table>
  <table border=1 bordercolordark=#ffffff bordercolorlight=#ffffff cellpadding=0 
cellspacing=0 width=685 align="center" height="70">
    <tbody> 
    <tr> 
      <td bgcolor=#F9D23C height=14> 
        <div align=center class=H1> <b><strong><span class="unnamed1">利用C语言小程序来解决大问题</span></strong></b></font></div>
      </td>
    </tr>
    <tr valign=top> 
      <td class=H1 height=212> 
        <p align="center"><font color="#FF0000"><strong> </span></strong></font></p>
        <p>   <span class="unnamed1">我们知道C语言的功能非常强大, 
          很适合编写系统软件。利用它我们可以很容易地解决经常遇到的一些棘手的问题,如拷贝隐含或系统属性的文件(特别是光盘中的隐含文件)、在任意DOS版本或在windows中更改子目录的名称、在任意DOS 
          版本中使用带空格的目录名等等。</span>这些问题仅靠操作系统或常用的工具软件往往很难凑效。我们可以利用C语言的强大功能来编写一些小程序,能够很顺利地解决这些问题。 
          <br>
          <br>
            一、拷贝隐含或系统属性的文件 <br>
          <br>
            使用操作系统提供的拷贝命令不能拷贝隐含或系统属性的文件,因为在拷贝过程中系统会提示“File not found”。下面的小程序可以解决这个问题。 
          <br>
          <br>
          // copyfile.c<br>
          # include &lt; stdio.h &gt;<br>
          # include &lt; stdlib.h &gt;<br>
          main(int argc,char *argv[])<br>
          { if(argc&lt; 3) <br>
          {<br>
          printf(&quot;\n用法: COPYFILE<br>
          &lt; 源文件名 &gt; &lt; 目标文件名 &gt;\n&quot;);<br>
          exit(1);<br>
          }<br>
          copy(argv[1],argv[2]);<br>
          }<br>
          <br>
          copy(char * file1,char * file2)<br>
          {<br>
          char ch;<br>
          FILE * fp1,* fp2;<br>
          <br>
          if((fp1=fopen(file1,&quot;rb&quot;))==NULL)<br>
          { <br>
          printf(&quot;\nCan't open file %s&quot;,file1); <br>
          fclose(fp1);<br>
          return;<br>
          }<br>
          if((fp2=fopen(file2,&quot;wb&quot;))==NULL)<br>
          { <br>
          printf(&quot;\nCan't open file %s&quot;,file2); <br>
          fclose(fp1);<br>
          return;<br>
          }<br>
          <br>
          ch=fgetc(fp1);<br>
          while (!feof(fp1))<br>
          { <br>
          fputc(ch,fp2);<br>
          ch=fgetc(fp1);<br>
          }<br>
          fclose(fp1);<br>
          fclose(fp2);<br>
          return;<br>
          }<br>
          <br>
            二、在任意DOS版本或windows中更改子目录的名称 <br>
            DOS 只是在 6. x 版本中提供了更改子录名的程序。 在windows中改目录名操作又很繁琐。 下面的小程序可以很简单地更改任何一级子目录的名称,而且也可以用来更改文件的名称。 
          <br>
          <br>
          # include &quot;stdio.h&quot;<br>
          main(int argc,char *argv[])<br>
          { int n;<br>
          if(argc&lt; 3)<br>
          { <br>
          printf(&quot;Required parameter missing\n&quot;);<br>
          exit(0);<br>
          }<br>
          n=rename(argv[1],argv[2]);<br>
          if(n==-1)<br>
          {<br>
          printf(&quot;Duplicate name or name not found\n&quot;);<br>
          exit(0);<br>
          }<br>
          }<br>
          <br>
            三、使用带空格的目录名 <br>
            众所周知,在DOS 中是不允许在文件名或子目录名中包含空格的。这是因为系统是用空格来区分输入的DOS 命令所带的参数,同样使用DOS的 
          MD、CD、RD等命令也无法使用含有空格的目录名。但是在用CHKDSK命令对磁盘进行检查时,对含有空格的子目录名并不给出错误信息。这说明在DOS 
          中含有空格的目录名是有存在的合法性的。因为DOS 中的命令无法使用含空格的目录名,所以可以起到一定的加密作用。下面的程序介绍如何利用C语言来建立、进入和删除含有空格的子目录。 
          <br>
          <br>
            1、建立带空格的子目录 <br>
          <br>
          /* 文件名: mddir.c */<br>
          #include &lt; dir.h &gt;<br>
          main(int argc,char * argv[])<br>
          { if (argc==2) <br>
          {if(mkdir(argv[1])) perror(&quot;Error&quot;);}<br>
          else printf(&quot;Usage : MDDIR + dirname\n&quot;);<br>
          return (0);<br>
          }<br>
          <br>
            在程序使用中注意要用双引号将目录名括起来,如果目录名中不含有空格可将双引号省略。例如: mddir &quot;a test&quot; 
          。以下程序使用方法相同 <br>
            2、进入带空格的子目录 <br>
          <br>
          /* 文件名: cddir.c */<br>
          #include &lt; dir.h &gt;<br>
          main(int argc,char * argv[])<br>
          { if(argc==2) <br>
          {if(chdir(argv[1])) perror(&quot;Error&quot;);}<br>
          else printf(&quot;Usage : CDDIR + dirname\n&quot;);<br>
          return 0;<br>
          }<br>
          <br>
            3、删除带空格的子目录 <br>
          /* 文件名: rddir.c */<br>
          #include &lt; dir.h &gt;<br>
          main(int argc,char * argv[])<br>
          { if (argc==2) <br>
          {if(rmdir(argv[1])) perror(&quot;Error&quot;);}<br>
          else printf(&quot;Usage : RDDIR + dirname\n&quot;);<br>
          return 0;<br>
          }<br>
          <br>
            以上程序均用 Turbo c 2.0 调试通过,注意以上程序的文件名不要与DOS中的有关命令相同,以免发生冲突。</span></font></p>
        <p> <span class="unnamed1">张广乐&middot;计算机世界日报 </span></font>
         
      </td>
    </tr>
    </tbody> 
  </table>
</div>
<p align="center"><script src="../../2.js"></script></a>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -