1 /*
2 * FILE: p48_file2lower.c
3 * DATE: 20180106
4 * --------------
5 * DESCRIPTION: 读取文件内容,输出时将小写字母转为大写
6 * fopen, fread
7 */
8
9 #include <stdio.h>
10 #include <stdlib.h> // exit
11 #include <string.h> // strlen
12
13 #define BUFFSIZE 128
14
15 void lower(char *p)
16 {
17 int i, len;
18 /*len = strlen(p);
19 for(i=0; i<len; i++)
20 {
21 if(p[i]>='A' && p[i]<='Z')
22 p[i] -= 32; // 大写转为小写
23 }*/
24 while(*p != '\0')
25 {
26 if(*p >= 'a' && *p<='z')
27 *p -= 32;
28 p++;
29 }
30 }
31
32 int main(void)
33 {
34 FILE *fp;
35 char buf[BUFFSIZE];
36 int len;
37
38 fp = fopen("temp.txt", "r");
39 if(fp == NULL)
40 {
41 perror("ERROR: fopen, fail to open file");
42 exit(1);
43 }
44 while((len=fread(buf, sizeof(char), BUFFSIZE-1, fp)) > 0)
45 {
46 buf[len] = '\0';
47 lower(buf);
48 fprintf(stdout, "%s", buf);
49 }
50 if(len < 0)
51 {
52 perror("ERROR: fread, fail to read file");
53 exit(1);
54 }
55 fclose(fp);
56 return 0;
57 }
编译执行: