2.文件操作的小程序:file.c

来源:互联网 发布:返利网是淘宝的吗 编辑:程序博客网 时间:2024/05/21 14:07

 1.在nfs的开发目录下编写 file.c 文件

    

Code:
  1. $vi file.c  
  2.   
  3. #include<stdio.h>  
  4. #include<stdlib.h>  
  5. #include<sys/stat.h>  
  6. #include<sys/types.h>  
  7. #include<fcntl.h>  
  8. #include<unistd.h>  
  9.   
  10.   
  11. int main(int argc, char* argv[])  
  12. {  
  13.         FILE* fp;  
  14.         int num;  
  15.         int folder;  
  16.   
  17.         char a[] = "Hello ARM Linux!/n";  
  18.   
  19.         fp = fopen("./linux.txt","w+");  
  20.         if(fp==NULL)  
  21.         {  
  22.                 printf("/nFail to open linux.txt!/n");  
  23.                 exit(-1);  
  24.         }  
  25.   
  26.         num = fwrite(a, sizeof(a), 1, fp);  
  27.         printf("%d byte data has written to linux.txt/n", num*sizeof(a));  
  28.   
  29.         folder = mkdir("./linux", 1);  
  30.         if(folder == -1)  
  31.         {  
  32.                 printf("/n Fail to create folder Linux!/n it has exited or the path is error!/n");  
  33.                 exit(-1);  
  34.         }  
  35.   
  36.         printf("Folder linux created Success!/n");  
  37.         close((int)fp);  
  38.   
  39.         return 0;  
  40.   
  41.   
  42. }  

2.编写makefile文件.

Code:
  1. EXEC = file  
  2. OBJS = file.o  
  3. SRC  = file.c  
  4.   
  5. CC = arm-linux-gcc  
  6. CFLAGS = -o2 -Wall -g  
  7. DFLAGS +=  
  8.   
  9. all:$(EXEC)  
  10.   
  11. $(EXEC):$(OBJS)  
  12.         $(CC) $(DFLAGS) -o $@ $(OBJS)  
  13.   
  14. %.o:%.c  
  15.         $(CC) $(CFLAGS) -o $@ -c $<  
  16.   
  17. clean:  
  18.         @rm -fv $(EXEC) *.o *~  

3. 执行make ,编译该文件.

Code:
  1. -bash-3.2# make  
  2. arm-linux-gcc -o2 -Wall -g -o file.o -c file.c  
  3. arm-linux-gcc  -o file file.o  
  4. -bash-3.2#  

4.在超级终端上,进行测试!

Code:
  1. /mnt/nfs/arm/project/test2 # ls  
  2. file      file.c    file.o    makefile  
  3. /mnt/nfs/arm/project/test2 # ./file  
  4. 18 byte data has written to linux.txt  
  5. Folder linux created Success!  
  6. /mnt/nfs/arm/project/test2 #  

 其中:要使用函数mkdir()需:(可用man 2 mkdir 查看其具体用法)

                                #inlcude<sys/stat.h> 

                               #include<sys/types.h>

文件控制的头文件:

                          #include<fcntl.h>

close函数,和exit函数应该是unix的系统调用:

                    #include<unistd.h>

   该头文件是unix标准函数库,即unix的系统的调用!

 

原创粉丝点击