debugging - 编译、调试、执行和运行的区别
问题描述
我是编程新手。此外,我对编译、调试、执行、运行感到非常困惑。他们每个人的意思是什么,首先是什么?谢谢。
解决方案
不让它变得复杂
- compile:使您的代码可执行,创建一个可以执行的文件
- 调试:是逐条检查代码执行的动作
- 执行/运行:使您的代码产生您编码的结果
C 基本示例
必需的
- gcc(编译器)
- 外壳(例如:bash)
- 终端模拟器
入门
主文件夹:
PROJECT
│
├─ README.md
│
└─ main.c
- main.c:此文件包含代码
#include<stdio.h>
int main(void)
{
char ch = 'd';
printf("hello worl%c",ch);
return 0;
}
- README.md:包含项目的解释
编译
在此文件夹中打开终端并输入:
gcc -o build/out main.c
- gcc : 编译器可执行文件
- -o build/out:输出的名称
- main.c:要编译的文件名
这不是我们应该看到的
PROJECT
│
├─ README.md
│
├─ build
│ └─ out
│
└─ main.c
<!-- build is just the name of the
folder were the executable is placed -->
执行/运行
在此文件夹中打开终端并输入:
./build/out
# result:
# > ./a.out
# hello world
推荐阅读
- javascript - React 组件未连接到商店
- mariadb - MariaDB 中的 AUTO_INCREMENT 仅保存在内存中
- excel - Excel - 将额外的列更改为行
- javascript - 涉及IIFE的吊装订单,具体示例
- docker - 如何使用 docker-compose 运行 Docker 镜像?
- python - jinja request.url_root 给我 http 而不是 https
- javafx - 异常运行应用程序
- python - 为什么 POST 看不到 GET 中设置的属性
- .net - Visual Studio 灰色文本背景,如何去除?
- c# - 如何使用 .NET Core 身份框架在 .NET Core MVC 前端对用户进行身份验证