📄 unix2dos.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 + -