Linux 基础编程第一课
创建环境
1.首先我们使用的是ubantu 的虚拟机进入以后按照教程安装编译器
2.但是不知道为什么在ubantu上安装很慢,我就转到kali上了
安装简易版cb
sudo apt install codeblocks
安装C库、C++库和Boost库,配置编译环境
sudo apt install build-essential
安装 CodeBlocks 的调试组件 Valgrind 用来探测内存泄露`
sudo apt install valgrind
安装CodeBlocks常用插件
sudo apt install codeblocks-contrib
程序编写
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <string.h> int main(){ int tempFd = 0; char tempFileName[20] = "test.txt"; //Step 1. open the file. tempFd = open(tempFileName, O_RDWR|O_EXCL|O_TRUNC, S_IRWXG); if(tempFd == -1){ perror("file open error.\n"); exit(-1); }//of if //Step 2. write the data. int tempLen = 0; char tempBuf[100] = {0}; scanf("%s", tempBuf); tempLen = strlen(tempBuf); write(tempFd, tempBuf, tempLen); close(tempFd); //Step 3. read the file tempFd = open(tempFileName, O_RDONLY); if(tempFd == -1){ perror("file open error.\n"); exit(-1); }//of if off_t tempFileSize = 0; tempFileSize = lseek(tempFd, 0, SEEK_END); lseek(tempFd, 0, SEEK_SET); while(lseek(tempFd, 0, SEEK_CUT)!= tempFileSize){ read(tempFd, tempBuf, 1024); printf("%s\n", tempBuf); }//of while close(tempFd); return 0; }//of main
在执行代码的时候发现老师的cut写错了应该是cur然后执行编译出来结果
然后我们使用a.out来执行输入