返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言和命令行间的交互问题怎么解决
  • 239
分享到

C语言和命令行间的交互问题怎么解决

2023-06-17 05:06:03 239人浏览 独家记忆
摘要

本篇内容主要讲解“C语言和命令行间的交互问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言和命令行间的交互问题怎么解决”吧!在windows操作系统中,后缀为.exe的文件都是可执

本篇内容主要讲解“C语言和命令行间的交互问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言和命令行间的交互问题怎么解决”吧!

windows操作系统中,后缀为.exe的文件都是可执行文件。.exe是英文单词executable的缩写,意思是可执行的。凡是可执行的文件都是二进制的文件,计算机也只能识别二进制的文件。

后缀为.exe的文件是由C语言的源文件.cc++的源文件.cpp编译而来。

在Windows操作系统中,凡是.exe的文件,都可以作为一条命令,在命令行中来执行。例如:在我的电脑D盘cPro文件夹中就有很多编译好的.exe可执行文件:

C语言和命令行间的交互问题怎么解决

Win + R 键输入cmd,进入命令行:

C语言和命令行间的交互问题怎么解决

然后输入命令进入到D:cPro

C语言和命令行间的交互问题怎么解决

cPro这个当前的文件目录下,就可以输入命令去执行这些可执行文件:
打印一个心形图

C语言和命令行间的交互问题怎么解决

任意长度的二进制字符转换为十六进制

C语言和命令行间的交互问题怎么解决


以上所有的可执行程序都是没有参数的,直接输入它的名字,就可以执行。本文的标题是和命令行进行交互,也就是说从命令行接收参数。在大多数情况下,我们写的C语言代码中,主函数都是没有参数的,如果想要和命令行进行交互,就需要主函数设置参数:

int main(int arGC, char *argv[]){return 0;}

其中argc是参数的个数,argv是一个字符串数组

例如:从命令行接收参数,并把它们的参数打印出来:

#include<stdio.h>int main(int argc, char *argv[]){int i;for(i = 0; i < argc; i++)printf("%s",argv[i]);return 0;}

编译该段代码,把它放在D盘的cPro文件目录下,进入命令行:

C语言和命令行间的交互问题怎么解决

其中tst是这个可执行程序的名字,后面一堆是它的参数。argv[0]的值为tstargv[1]的值为Jackeyargv[2]的值为Song,往后以此类推。参数的个数是不固定的。


也可以写一个程序,让这个程序自动在命令行输入命令,例如输入命令dir列出当前文件目录下的所有文件:

int main(){system("dir");return 0;}

运行结果:

C语言和命令行间的交互问题怎么解决

再例如写一个程序,这个程序去调用当前文件目录下的另外一个程序:

int main(){system("tst 黑夜无论怎样悠长 白昼总会到来 莎士比亚");return 0;}

运行结果:

C语言和命令行间的交互问题怎么解决


以上几个小案例,就很好地介绍了如何写C语言程序,去和命令行去交互,实现一个C程序调用另外一个C程序,或者从命令行接收参数,在把参数打印出来。

当然,我们可以实现稍微复杂的功能,例如:写一个自动创建源文件的程序,并把它添加到环境变量,这样我们就可以在任意文件目录下去使用它,下面这个代码就是自动创建Java源文件的程序:

#include <stdio.h>#include <string.h>int main(int argc, char *argv[]){char str[20];char ext[5] = ".java";int i;FILE *fp[argc];for(i = 1; i < argc; i++){strcpy(str,argv[i]);strcat(str,ext);fp[i] = fopen(str,"wb+");printf("%s源文件创建成功!",str);fclose(fp[i]);}return 0;}

编译后给生成的可执行文件命名为newja,把它添加到环境变量,在命令行中调用它:

C语言和命令行间的交互问题怎么解决
C语言和命令行间的交互问题怎么解决


也可以写程序自动在命令行输入命令,调用newja这个程序,让它自动创建源文件:

int main(){system("newja aaa b cc e fdd");return 0;}

C语言和命令行间的交互问题怎么解决


和命令行交互,能做的事情远远不止这些,只要你能想到的,它就能做到。

到此,相信大家对“C语言和命令行间的交互问题怎么解决”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: C语言和命令行间的交互问题怎么解决

本文链接: https://lsjlt.com/news/287295.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • C语言和命令行间的交互问题怎么解决
    本篇内容主要讲解“C语言和命令行间的交互问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言和命令行间的交互问题怎么解决”吧!在Windows操作系统中,后缀为.exe的文件都是可执...
    99+
    2023-06-17
  • 关于C语言和命令行之间的交互问题
    在Windows操作系统中,后缀为.exe的文件都是可执行文件。.exe是英文单词executable的缩写,意思是可执行的。凡是可执行的文件都是二进制的文件,计算机也只能识别二进制...
    99+
    2024-04-02
  • C语言和命令行之间的交互方式
    本篇内容介绍了“C语言和命令行之间的交互方式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在Windows操作系统中,后缀为.exe的文件都...
    99+
    2023-06-20
  • 怎么使用CliWrap让C#中的命令行交互
    小编给大家分享一下怎么使用CliWrap让C#中的命令行交互,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!在代码中进行命令行交互是一个很常见的场景, 特别是在一些CI CD 自动化流程中, 在这之前我们会使用 System...
    99+
    2023-06-21
  • C语言系统日期和时间问题怎么解决
    这篇文章主要讲解了“C语言系统日期和时间问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言系统日期和时间问题怎么解决”吧!⒈题目内容输出系统的日期以及时间。在本代码当中只有一个...
    99+
    2023-07-02
  • C#开发交互式命令行怎么应用
    这篇文章主要介绍“C#开发交互式命令行怎么应用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C#开发交互式命令行怎么应用”文章能帮助大家解决问题。前言如果你开发过vue应用,应该对其交互式命令行印象...
    99+
    2023-06-30
  • C语言怎么解决抓交通肇事犯问题
    这篇文章主要介绍“C语言怎么解决抓交通肇事犯问题”,在日常操作中,相信很多人在C语言怎么解决抓交通肇事犯问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言怎么解决抓交通肇事犯问题”的疑惑有所帮助!接下来...
    99+
    2023-06-29
  • C语言怎么对命令行参数求和
    在C语言中,可以通过命令行参数传递给程序,然后对这些参数进行求和。以下是一个示例代码: #include #include i...
    99+
    2023-10-26
    C语言
  • MySQL命令行乱码问题怎么解决
    这篇文章主要讲解了“MySQL命令行乱码问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL命令行乱码问题怎么解决”吧!  MySQL命令行...
    99+
    2024-04-02
  • WebGL与网页交互问题怎么解决
    今天小编给大家分享一下WebGL与网页交互问题怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。(一)首先说Unity调...
    99+
    2023-06-30
  • C语言怎么用堆解决Topk问题
    这篇文章给大家分享的是有关C语言怎么用堆解决Topk问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言将详细讲解如何利用小根堆的方法解决TopK问题,这么多数据要处理,该算法时间复度居然只需TopK问题Top...
    99+
    2023-06-21
  • c语言汉诺塔问题怎么解决
    解决汉诺塔问题的常见方法是使用递归。以下是使用递归解决C语言汉诺塔问题的示例代码:```c#include void hanoi(i...
    99+
    2023-10-07
    c语言
  • c语言怎么解决素数环问题
    素数环问题是指在一个圆环上排列一组互不相同的素数,使得任意两个相邻的素数之和也是素数。解决素数环问题的一种方法是使用回溯法。以下是一...
    99+
    2023-08-08
    c语言
  • C语言怎么解决Fibonacci数列问题
    在C语言中,可以使用循环或递归的方式来解决Fibonacci数列问题。 使用循环解决Fibonacci数列问题: #includ...
    99+
    2024-02-29
    C语言
  • C语言如何解决QString与QByteArray互相转换的问题
    今天小编给大家分享的是C语言如何解决QString与QByteArray互相转换的问题,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。目录[1] QString与QByteArray互...
    99+
    2023-07-06
  • C语言命令行参数怎么使用
    这篇“C语言命令行参数怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言命令行参数怎么使用”文章吧。c语言的命令行...
    99+
    2023-06-17
  • c语言的连续赋值问题怎么解决
    C语言的连续赋值问题是指在一条语句中连续赋值多个变量时可能会出现的问题。例如: int a, b; a = b = 10; 在这个例...
    99+
    2023-10-27
    c语言
  • c语言怎么解决24点游戏问题
    这篇文章主要讲解了“c语言怎么解决24点游戏问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“c语言怎么解决24点游戏问题”吧!问题你有 4 张写有 1 到 9 数字的牌。你需要判断是否能通...
    99+
    2023-06-19
  • C语言怎么解决兔子产子问题
    本篇内容主要讲解“C语言怎么解决兔子产子问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言怎么解决兔子产子问题”吧!1. 问题描述有一对兔子,从出生后的第 3 个月起每个月都生一对兔子。小...
    99+
    2023-06-29
  • C语言轮转数组问题怎么解决
    今天小编给大家分享一下C语言轮转数组问题怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。题目描述给你一个数组,将数组中...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作