Linux系统下编译连接C源代码
gcc test.c -o test 一步到位的编译指令 得到 test 文件
gcc test.c 得到 test.out 文件
gcc -g -c test.c -o test 只生成目标文件(.obj文件),没有生成可执行文件(也就是说test是.obj文件)
gcc -g test.c -o test 生成可执行文件(可以通过./test运行程序)
-g:生成调试信息。GNU 调试器可利用该信息。
-c:只编译并生成目标文件。(没有中间文件生成和可执行文件,如列表文件、可执行文件)
-o:设置生成的可执行程序的名字为test
上面的命令会产生可执行程序:test
在Terminal中输入:./test 就可以运行该程序了。
gcc main.c
gcc main.c -o main.out
gcc -c main.c -o main.o
gcc max.o min.o hello.c
gcc max.o min.o hello.c -o hello.outgcc main.c -o main.out && ./main.out 只有当第一个命令执行成功的情况下,下一个命令才会执行
echo $? 查看返回结果
main函数中的参数:
int main(int argv, char **argc[])
{printf("argv is %d\n",argv);int i;for(i=0;i<argv;i++){printf("argc[%d] is %s\n", i, argc[i]);}return 0;
}int main(int argc, char **argv[])
{int port = 0;printf("program begin\n");if (argc != 3) {printf("程序参数个数不对!正确输入方法如下:\n%s ip-address port\n",argv[0]);exit(0);}if (atoi(argv[2]) < 0 || atoi(argv[2]) > 65535) {printf("端口输入不对!应该是0-65535的值。程序取默认值3456\n");port = 3456;} elseport = atoi(argv[2]);printf("命令如下:%s %s %d\n", argv[0], argv[1], port);return 0;
}
转载于:https://www.cnblogs.com/zhuiluoyu/p/4671377.html
Linux系统下编译连接C源代码相关推荐
- linux系统c++编译连接过程,动态库与静态库
https://www.cnblogs.com/ucas/p/5778664.html(linux系统c++编译连接过程) http://www.cnblogs.com/skynet/p/337285 ...
- centos7——Linux系统下如何连接网络图文讲解教程
作者:RodmaChen 关注我的csdn博客,更多Linux笔记知识还在更新 本人只在csdn写博客 历经千辛万苦也是将Linux联网成功,所以写下了这篇文章供大家参考,希望对你们有帮助 介绍:安装 ...
- linux系统下编译运行C++程序
前提 首先linux系统下要有C++编译环境.可以使用 which gcc which g++ 查看linux系统下是否安装GNU编译器. 编写代码 使用vim命令打开编辑器编写代码 先写一个最简单的 ...
- 在Linux系统下编译并执行C++程序
引言 为什么要在Linux下写程序? 首先要问一下自己,为什么要写这个程序. 如果我们写一个运行在windows平台的应用程序,那么用Linux写肯定是傻瓜或者强迫症,因为在windows平台调试wi ...
- linux系统下编译安装gcc库
概述 一般来说,gcc.g++为linux系统基础组件,不会需要升级,但在安装某些新软件时,需要c++17支持,此时就需要升级gcc.g++. g++包含在gcc库中,所以直接升级gcc即可. gcc ...
- linux系统下编译fpga工程,【工程师分享】整合Xilinx PetaLinux工程编译和Open Source U- Boot/Linux编译...
5.1. 保留Linux和UBoot源代码 缺省情况下,PetaLinux在编译完成后会删除源代码,以节省硬盘空间.在project-spec/meta-user/conf/petalinuxbsp. ...
- Linux的视频分割软件,在Linux系统下编译安装Video Splitter分割视频工具
Video Splitter是一款视频分割工具,它可让您无损且方便地分割视频,它是用Vala编写的本地GTK程序,用于Linux桌面系统. 特征 很好用且支持众多主流Linux发行版. 无损切割大多数 ...
- linux系统下网络连接不上的问题
centOS 6.5 问题:系统在虚拟机中安装完成之后,发现使用XShell无法连接 解决: 首先检查系统网络设置,修改系统网络配置文件:/etc下的网络配置文件为静态IP 发现依然连接不上,ifco ...
- 当电脑在linux系统下不能连接wifi时,一种可行的解决方法
route -n ##查看路由状态,如果有类似172.25.254.250,(关键看后三位是否为250,如果是则说明主机中的默认网关没有去掉),由于我的设置好了所以不是 cd /etc/sysconf ...
- 在linux系统下如何编译运行C语言程序和C++程序
文章目录 1:linux系统下编译运行C程序 2:linux系统下编译C++程序 1:linux系统下编译运行C程序 gcc -o a a.c gcc -o 想要的文件名 文件的名字.c 2:linu ...
最新文章
- 项目通用环境使用说明
- android stack error message is Fail to start the plugin
- Python爬虫实战(1):爬取糗事百科段子
- ObjectDataSource未能找到带参数的非泛型方法
- C#和JS交互 WebBrowser实例
- Immutable Collections(3)Immutable List实现原理(中)变化中的不变
- Ubuntu 16.04出现chmod: 无效模式:a的问题解决
- python 制作抽奖箱_丽水本地抽奖箱制作公司,抽奖箱制作-优质服务!
- 写给我们奔三的80后们……
- oracle系统物料事务处理类型,Oracle_EBS_斌力十足系列_INV库存模块操作手册_杂项事务处理的分类和实际业务的应用场景专题研究报告...
- jlink v9可升级固件‘_在rt-thread下实现OTA在线固件更新功能
- JDK的问题:用C启动虚拟机跟java运行结果有差异
- Shark简介、部署及编译小结
- Visual Studio 2013官方简体中文专业版/旗舰版/高级版下载(含激活序列号)
- 基于流程管理的企业风险管理模式
- 如果时光倒流,我会这样学java
- scala怎么取绝对值
- 蓝桥杯 算法训练 寂寞的数(c语言版详细注释)
- 如何让cloudflare缓存html,cloudflare无限流量缓存的使用方法
- python mac地址转int,Python MAC地址 获取,过滤,转
热门文章
- 讨论 innodb_log_block_size 变量
- Google C++ unit test 在ARM Android 2.3 上的编译与使用
- Windows 8实用窍门系列:16.Windows 8的右键菜单
- 在 win7rc 版下成功安装完 vs2010 beta1
- Ajax开发框架(下)[整理]
- 【漏洞复现】局域网 ARP 中间人攻击 获取他人账号密码
- 【tf.keras】tf.keras模型复现
- Excel--数据分列功能
- 《设计模式之禅》--设计模式大PK
- 常用shell命令介绍