Advertisement

c语言要运行环境吗,C语言学习(一)—环境配置

阅读量:

C语言学习(1)—环境配置

作为开头的几句话,这篇心得是基于杨老师的一套视频课程而产生的随笔记录,在学习过程中进行边学边记,并在此表示衷心的感谢。

1.学习C之前需要避免的误区

误区一:C++是C的升级版;C#是C++的升级版

误区二:C/C++就是Visual C++

误区三:MFC是学C/C++必学的“高级技术”

2.关于开发工具的说明

2.1 编辑器(Compiler):compilation 是从源代码到计算机能直接执行的目标代码(机器语言)的翻译过程。C 语言的编译器包括 GCC 和 MSC++ compiler。

扩展:对于C#代码的执行流程来说是经过二次编译的过程。首先,在经过C#编译器后生成中间代码(IL)。随后,在运行包含C#代码生成的可执行文件时会发生第二次编译过程。这个阶段会调用即时编译器(JIT),将程序转换为机器指令。

2.2集成开发工具(IDE):常见的特性包括对关键字进行突出显示、能够自动呈现代码内容以及具备自动展示代码功能。此外,在使用过程中还会提供代码格式化功能。

3.gcc编译第一个C程序

3.1GCC的简介

3.2GCC的使用

第一步:获取GCC源代码包。将下载完成后的GCC源代码包存放在一个没有空格且不包含中文的文件夹里。

写如下代码,命名为为t1.c,保存到E盘下的abc文件夹

#include

intmain()

{

printf("你好");return 0;

}

注:代码保存格式要ANSI,否则中文会出现乱码。

第二步:打开cmd,进入t1.c所在文件夹,运行编译过程,执行exe

11165939.png

4.EditPlus搭建GCC开发环境

发现每次编译单个文件时都需要编写大量的重复性编码工作, 以下将介绍如何利用EditPlus自定义构建一个GCC-based开发环境

下载EditPlus,并安装,打开。然后进行一下操作:

工具---》配置用户信息---》工具组1---》添加工具---》应用程序

如下图:

11165940.png

4.1创建 【gcc编译】

菜单文字:操作的名字,自己定义

命令:代表要执行的程序,写gcc.exe的全路径

参数:即执行程序要传递给gcc.exe的参数:(FileName) -o (FileNameNoExt).exe

初始目录:选择【文件目录】,相当于cmd中 cd到.c的文件夹

动作:选择【捕捉输出】

保存:选择【当前文件、所有打开文件】

界面如下:

11165941.png

下面是设置快捷键:

工具---》快捷键---》类型---》工具---》用户工具1---》新快捷键---》分配

11165942.png

4.2创建【gcc运行】

11165943.png

4.3使用EditPlus运行c程序

将代码文件t1.c输入至EditPlus编辑器中,并依次单击工具菜单栏中的" gcc 编译"选项卡和" gcc 运行"选项卡。完成上述操作后,在终端窗口中会显示相应的处理结果。

11165944.png

C语言不仅只能写控制台程序,还可以做出各种UI界面,下面C的一个GUI

5.编写第一个GTK程序

5.1GTK的介绍:

5.2GTK的配置:

下载好GTK并保存到相应文件夹,并配置环境变量

11165945.png

5.3GTK在EditPlus中的使用:

创建gtk编译

11165946.png

参数的配置:

IF:\GTK\include中的F为为GTK在F盘;

(FileName) 以指定输出文件名 (FileNameNoExt).exe 运行

在EditPlus输入如下代码:

#include #include//引入GTK文件

int main(int argc, char *argv[])

{//初始化GTK环境,不写会报错

gtk_init(NULL,NULL);//新建一个顶级窗口,返回窗口指针

GtkWidget*window=gtk_window_new(GTK_WINDOW_TOPLEVEL);//设置窗体标题

gtk_window_set_title(window, "问候"); // 为窗口设为当其关闭时自动退出程序
如果关闭该窗口则会中断当前执行流程; 否则即使看不到它也仍然保有运行中的进程; 这时就无法再进行编译源代码文件

g_signal_connect(window,"destroy",gtk_main_quit,NULL);//

//显示窗口

gtk_widget_show(window); // 启动消息循环机制,在无附加程序的情况下可能导致闪退,在gtk_main之后通常不会添加额外代码

gtk_main();return 0;

}

运行后

11165947.png

在第一天的时候就到这里了,在之后有想到什么的时候,则需逐步进行修改。突然意识到:将已知的知识转化为文字确实是一项具有挑战性的任务。

全部评论 (0)

还没有任何评论哟~