1. C 在Linux下编译运行C文件如下(设定有一个hello.c的文件)
在当前目录下(C),
# gcc hello.c -o hello
# ./hello
在当前目录下(C++)
# g++ hello.cc -o hello
# ./hello
命令行参数来实现main函数参数的传递
#include<stdio.h>
int factorial(int n);
int main(int argc, char **argv){
if(argc == 2){
int n = atoi(argv[1]);
int result = factorial(n);
printf("factorial of %d is %d\n",n,result);
}else{
printf("error number of arguments\n");
}
}
int factorial(int n){
if(n <= 1){
return 1;
}else{
return n * factorial(n - 1);
}
}
结果:
(执行./args)
error number of arguments
(执行./args 5)
factorial of 5 is 120
注:
argc 是外部命令参数的个数,argv[] 存放各参数的内容,如上例:执行./args时,argc 为1,argv[0] 为 ./args .而执行 ./args 5时,argc 的值为 2,
argv[0] 为 ./args,argv[1] 为 5.
2. 编译预处理
1)执行宏定义
2)包含文件
3)条件编译 #if #else #endif
3. 调试程序
gcc -g debug.c -o mydebug
gdb mydebug
l #显示文件内容
break 4 # 在第四行加入断点 也可以在某个函数处停住
info break #显示break的信息
r # run
n # next
q # quit
c # continue
p i # print i
bt # 查看函数堆栈
finish # 退出函数
#设置观察点、捕捉点、停止点
watch #一旦值变化则停住
awatch #一旦值被读或者写
rwatch #一旦值被读
分享到:
相关推荐
标题 "NI采集卡 Linux下C/C++语言demo" 涉及到的是使用National Instruments(NI)的DAQmx(数据采集和测量系统)驱动在Linux操作系统中进行数据采集的编程实践。NI采集卡是一种用于实验测量和控制的硬件设备,能够...
针对Linux平台,Eclipse IDE for C/C++充分利用了Linux系统的特性,如利用Shell命令行工具进行系统级操作,以及与Linux下的各种库和框架的兼容性。开发者可以直接在IDE内调用系统终端,运行shell命令,这对于处理...
### Linux下C/C++开发入门及开发环境配置 #### C语言简介 C语言是一种历史悠久、通用性强的编程语言,最初由贝尔实验室的Dennis Ritchie为UNIX操作系统开发所设计。随着时间的发展,C语言逐渐成为了跨平台编程的...
在Linux环境下,C/C++程序员经常需要与Oracle数据库进行交互,以实现数据的存取、查询和其他操作。Pro*C是Oracle公司提供的一种预编译器,它允许C或C++程序直接调用PL/SQL代码,极大地简化了数据库操作。本篇文章将...
Linux C/C++基础学习资料是IT领域初学者和开发者的重要资源,涵盖了操作系统、编程语言以及算法等多个关键知识点。本文将详细解析这些主题,以便你更好地理解和掌握相关技能。 首先,让我们从“Linux命令详解”开始...
VSCode的C/C++扩展插件,通常称为`ms-vscode.cpptools`,是由微软开发的官方插件,用于提供C/C++语言的语法高亮、代码补全、调试支持等功能。这个插件的版本号为0.8.1,意味着它已经经过了多次迭代和优化,以满足...
提供的三个.chm文件——`cplusplus.chm`、`Linux C 函数.chm`、`C_C++中文函数手册.chm`,分别详细介绍了C++标准库、Linux下的C函数和C/C++的通用函数,是学习和查询函数用法的重要参考资料。 总的来说,这份资源...
在这个压缩包中,"经典的linux和C语言"可能包含了一些经典的教程或者参考资料,比如讲解Linux系统编程的《Unix Network Programming》、《Advanced Linux Programming》等,或者关于C语言的《C Primer Plus》、《The...
Eclipse是开源软件,它提供了丰富的功能,如代码编辑、调试、构建管理和版本控制,使得开发者能够在Linux环境下高效地进行C/C++项目开发。 【描述】中提到的"解压即可安装",意味着Eclipse的Linux版本通常以.tar.gz...
通过上述内容的学习,开发者不仅可以掌握C/C++语言本身的知识点,还能深入了解Linux环境下服务器编程的全貌,为将来从事相关工作打下坚实基础。需要注意的是,这些知识点是相辅相成的,只有将它们融会贯通,才能更好...
在Linux环境下进行C/C++编程时,理解和熟练运用各种函数是至关重要的。这些函数构成了标准库,为开发者提供了丰富的功能,比如内存管理、输入/输出、字符串操作等。本篇文章将详细探讨`calloc`和`free`这两个重要的...
在Linux环境下进行C/C++开发,选择一款高效且功能丰富的开发工具至关重要。本文将深入探讨Linux下C/C++的最佳开发工具,以及如何利用这些工具提升编程效率和代码质量。 Eclipse是一款广泛应用于软件开发的开源集成...
在Unix/Linux环境下,C和C++编程是系统级开发的核心技术。这个"UNIX/Linux下C/C++函数速查手册"提供了全面的C和C++函数参考,帮助开发者快速找到所需的函数信息,提升开发效率。以下是一些关键的知识点: 1. **...
在"C/C++嵌入式开发与Linux命令大全"这一主题中,我们涵盖了两个主要领域:C/C++编程语言以及在Linux环境下进行嵌入式系统开发所使用的命令行工具。C和C++是底层编程的基石,广泛应用于嵌入式系统的开发,而Linux...
"UNIX环境高级编程"这本书是学习Linux系统编程的经典之作,它深入讲解了如何利用C/C++在Unix/Linux环境下进行高效开发。 首先,Linux C/C++编程涉及到的知识点广泛,包括但不限于以下几个方面: 1. **标准库**:...
C/C++扩展,即`cpptools`,是由微软官方提供的,用于增强VSCode对C和C++语言的支持。这个扩展包版本为v0.26.3,包含了在Linux和Windows操作系统上进行离线安装所需的所有文件。 `cpptools`扩展提供了丰富的功能,以...
- **了解操作系统**:熟悉Windows或Linux的基本操作,因为C/C++程序通常需要在命令行下编译和运行。 - **练习编程**:编程是一项实践性很强的技能,需要不断地编写代码来提高自己的水平。 - **阅读源代码**:尝试...
同时学习LINUX和C/C++ Linux是一种自由和开放源码的类Unix操作系统。目前存在着许多不同的Linux,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式...
在Linux环境下进行C/C++编程是一项重要的技能,尤其对于系统级开发者和软件工程师而言。Linux提供了丰富的工具和库,使得C/C++程序员可以充分利用操作系统的能力。以下是一些关于"Linux C/C++超有用"的知识点: 1. ...
理解并掌握这些知识点,对于提升Linux下的C/C++编程能力非常关键,能够帮助开发者更有效地利用操作系统资源,编写出高质量的系统级和应用级程序。通过不断学习和实践,你可以成为一个精通Linux环境下的C/C++开发者。