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

📄 unix2dos.lst

📁 编码方式的解码示范uuencode and uudecode are in the public domain. dos2unix and unix2dos are hereby placed in
💻 LST
字号:
 


                                                                                                                            PAGE   1
                                                                                                                            10-15-89
                                                                                                                            17:01:26

 Line#  Source Line                                                                                Microsoft C Compiler Version 5.10

      1  /*
      2   *	Unix uses only a LF for \n.  MS-DOS uses CRLF.
      3   * This program puts the CR back in for MSDOS.
      4   *
      5   * Kenneth J. Hendrickson
      6  */
      7  
      8  #ifdef MSDOS
      9  #include <fcntl.h>
     10  #include <io.h>
     11  #include <process.h>
     12  #endif
     13  #include <stdio.h>
     14  
     15  #define CTRL_J	'\012'	/* LF */
     16  #define CTRL_M	'\015'	/* CR */
     17  
     18  main(argc, argv)
     19  int argc;
     20  char **argv;
     21  
     22  {
     23  	FILE *in;
     24  	char buffer[2];
     25  
     26  	/* optional input arg */
     27  	if (argc > 1) {
     28  		if ((in = fopen(argv[1], "r")) == NULL) {
     29  			(void) perror(argv[1]);
     30  			exit(1);
     31  		}
     32  		argc--;
     33  	} else
     34  		in = stdin;
     35  
     36  	if (argc != 1) {
     37  		(void) fprintf(stderr, "Usage: unix2dos [infile]\n");
     38  		exit(2);
     39  	}
     40  
     41  #ifdef MSDOS
     42  	/* don't translate CRLF into LF when reading */
     43  	(void) setmode(fileno(in), O_BINARY);
     44  
     45  	/* don't translate LF into CRLF when writing */
     46  	(void) setmode(fileno(stdout), O_BINARY);
     47  #endif
     48  
     49  	while (fread(buffer, sizeof (char), 1, in) == 1) {
     50  		if (buffer[0] == CTRL_J)
     51  			(void) fputc(CTRL_M, stdout);	/* add a CR before the LF */
 


                                                                                                                            PAGE   2
                                                                                                                            10-15-89
                                                                                                                            17:01:26

 Line#  Source Line                                                                                Microsoft C Compiler Version 5.10

     52  		(void) fputc(buffer[0], stdout);
     53  	}
     54  }


main  Local Symbols

Name                      Class   Type              Size   Offset  Register

buffer. . . . . . . . . . auto                             -0004 
in. . . . . . . . . . . . auto                             -0002 
argc. . . . . . . . . . . param                             0004
argv. . . . . . . . . . . param                             0006


Global Symbols

Name                      Class   Type              Size   Offset  

_iob. . . . . . . . . . . extern  struct/array       ***     ***
exit. . . . . . . . . . . extern  near function      ***     ***
fopen . . . . . . . . . . extern  near function      ***     ***
fprintf . . . . . . . . . extern  near function      ***     ***
fputc . . . . . . . . . . extern  near function      ***     ***
fread . . . . . . . . . . extern  near function      ***     ***
main. . . . . . . . . . . global  near function      ***    0000
perror. . . . . . . . . . extern  near function      ***     ***
setmode . . . . . . . . . extern  near function      ***     ***

Code size = 00c4 (196)
Data size = 001c (28)
Bss size  = 0000 (0)

No errors detected

⌨️ 快捷键说明

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