C语言 01.入门程序和编译步骤

1. helloworld程序:

#include <stdio.h>      // #:关键标识符,表示引入头文件;include:引入头文件关键字
                        // stdio.h : 系统标准输入、输出库对应的头文件。给printf函数服务。
                        // <>:表示使用系统库函数。 “”:表示用户自定义库函数
int main(void)          // int: 函数返回值是整型数据。      main:函数名。程序唯一的入口。必须有,且只有一次
                         //  void: 函数调用无需传参
{                        // 函数体 起始位置        
    printf("Hello World!\n");   //将"hello world"写道屏幕上。  \n:回车换行
    system("pause");    //暂停
    return 0;           // 返回当前函数调用—退出程序     0:要和main函数的返回值一一对应
}                       // 函数体 结束位置

解决提示窗一闪而过:

  1. 通过 system()函数解决:
    在 return 0;之前 添加 system(“pause”); 函数调用。

  2. 借助VS工具解决:
    在项目上 —》右键 —》 属性 —》 配置属性 —》 连接器 —》 系统 —》 子系统
    —》 在下拉框中选择“控制台 (/SUBSYSTEM:CONSOLE)”

System函数:
执行系统命令。如: pause、cmd、calc、mspaint、notepad…
system(“cmd”); system(“calc”);
清屏命令:cls; system(“cls”);

两种编写 helloworld 的方式:

  1. 借助VS编辑工具编写。
    创建项目 --》 创建 helloworld.c 源文件 --》 写 helloworld程序 --》Ctrl + F5 执行。

  2. 借助记事本、gcc编译工具编写。

    gcc编译工具的环境变量配置:
    在QT的安装目录中找 gcc.exe 目录位置。例如: C:\Qt\Qt5.5.0\Tools\mingw492_32\bin
    我的电脑 --》属性 --》 高级系统设置 --》 环境变量 --》系统环境变量 --》 path --》 将gcc.exe 目录位置写入到 path的值中。

    使用记事本创建 helloworld.c 文件
    在记事本中写 helloworld 程序 --》 使用gcc编译工具 ,在记事本写的 helloworld.c 所在目录中,执行 gcc helloworld.c -o myhello.exe
    –》 在终端(黑窗口)中,运行 : myhello.exe

小技巧

1.选中路径,输入cmd +enter,可以直接打开小黑窗
2.单行注释使用斜杠// (" \" 叫做反斜杠 )
3.多行注释:/* 注释内容 */
4.不允许嵌套使用。 多行中可嵌套单行。d.c 所在目录中,执行 gcc helloworld.c -o myhello.exe
–》 在终端(黑窗口)中,运行 : myhello.exe

2. gcc编译4步骤:【重点】

1. 预处理 -E xxx.i 预处理文件

gcc -E xxx.c -o xxx.i
1) 头文件展开。 — 不检查语法错误。 可以展开任意文件。
2)宏定义替换。 — 将宏名替换为宏值。
3)替换注释。 — 变成空行
4)展开条件编译 — 根据条件来展开指令。

2. 编译 -S xxx.s 汇编文件

gcc -S hello.i -o hello.s
1)逐行检查语法错误。【重点】 — 整个编译4步骤中最耗时的过程。
2)将C程序翻译成 汇编指令,得到.s 汇编文件。

3. 汇编 -c xxx.o 目标文件

gcc -c hello.s -o hello.o
1)翻译:将汇编指令翻译成对应的 二进制编码。

4. 链接 无 xxx.exe 可执行文件。

gcc hello.o -o hello.exe
1)数据段合并
2)数据地址回填
3)库引入
-o:将结果输出并指定输出文件的文件名
在这里插入图片描述

3.调试程序:

添加行号:工具–》选项 --》文本编辑器–》C/C++ --》行号 选中。

  1. 设置断点。F5启动调试
  2. 停止的位置,是尚未执行的指令。
  3. 逐语句执行一下条 (F11):进入函数内部,逐条执行跟踪。
  4. 逐过程执行一下条 (F10):不进入函数内部,逐条执行程序。
  5. 添加监视:
    调试 --》窗口 --》监视:输入监视变量名。自动监视变量值的变化。
    VS常用快捷键
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值