CentOS编写C语言程序

时间:2024-03-13 07:36:37

首次接触Linux系统,刚开始都不知道选用哪个,听说国内用Ubuntu比较多,但是做服务器的话用CentOS,所以我选择了CentOS,纯属感觉逼格高点而已(其实一开始我还以为Linux系统就是Linux系统,和Ubuntu、CentOS没有关系,上网查找才知道它们的关系)

再插点闲话:我这里是做实验用到的Linux系统,Ubuntu和CentOS都是有桌面的,Linux的最小版本是没有桌面的,就是纯控制台那种,别人告诉我安装最小版本,但是我觉得没有必要,既然有桌面干嘛不用桌面?是吧?

Linux系统的安装这里不做介绍,看网上别人的安装教程还有点复杂,我自己安装有点傻瓜式,不像别人说的那么麻烦,不懂安装的还是去找教程吧

下面回到正题

CentOS编写C语言程序
写程序我们用它自带的编辑器
CentOS编写C语言程序
进入编辑器:
CentOS编写C语言程序
也可以自定义保存,我选择自定义保存
CentOS编写C语言程序
写C语言程序时记得以.c结尾,如myProgram.c
CentOS编写C语言程序
接下来就可以编写程序了,写好程序后就是编译,步骤如下:

回到桌面,右键打开控制台
CentOS编写C语言程序
第一句是编译,第二句是运行,如果编译不过,即代码有误,会报错,我上面的error就是错误
CentOS编写C语言程序
gcc:表示编译,必须要写
CloudTest/Test1/mostCountWord.c:原文件路径
-g:用于调式,可以写,可以不写,建议写上,方便调试
-o:告诉 GCC 把源代码编译为目标代码而跳过汇编和连接的步骤
CloudTest/Test1/mostCountWord:目标文件
上面的语句也可以这样写:gcc -g -o CloudTest/Test1/mostCountWord CloudTest/Test1/mostCountWord.c
第二句就不用多说了,前面的./是必须的

如果要调试则这样输入,gdb进入调试
CentOS编写C语言程序
调试的时候先run,再进行调试
CentOS编写C语言程序
我的程序是读取文件,然后统计出现次数最多的几个单词,如下所示:
CentOS编写C语言程序
关于CentOS编写C语言程序到此结束

下面写重点,写这篇文章的目的其实是为了记录这个过程遇到的问题

问题一:const修饰的常量不能用于数组
CentOS编写C语言程序
报错如下:variably modified ‘word’ at file scope
CentOS编写C语言程序
使用const修饰在c++里面是可以的,但是c不行,听说可以使用#define MAXSIZE 128解决,但是我试了不行,所以最终采用方案是直接在数组里面用数字声明数组大小。

问题二:无法打开文件
这个其实是文件路径问题,即使c语言原文件和要读取的文件在同一个文件下面也不行,解决方法是使用绝对路径:
CentOS编写C语言程序