栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【C++&Python】拾遗

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【C++&Python】拾遗

1. 带参数执行

  在C/C++中,常用的控制台程序中main函数都是不传参数的,这样相当于无参数执行,但main函数完整的定义结构是有参数的:

int main(int argc, char *argv[]);

其中,argc代表参数的个数(argument count),argv代表各个参数的首地址(一个指针数组)(argument value),而且需要注意的是,argc是传入参数个数+1;argv[0]实际上就是该程序所在地址,只读。
  那这个怎么使用呢?一般是先编译运行,然后在命令行中执行程序时传入参数即可。

附:参考链接

  同样,在python中也有类似的传入参数执行的操作,具体可以看一下这个链接。

2. C语言中执行命令行操作并保存到文件

  最近才知道,C语言中的system("pause");等一些类似的语法,实际上就是在命令行中输入引号中的字符串,实现调用系统的一些功能。那能不能使用这个语法来执行一些相对复杂的指令,而且最好是可以将执行结果返回回来。
  保存命令行执行得到的结果一般有两种方式,一种是在文件中写入特定的内容,需要使用到echo指令,使用格式:echo 内容 > 文件路径,举个例子

echo hello "C:UsersZeoyDesktop1.txt"

上面这个例子是将hello内容写入到一个txt文件中。参考链接
  但其实更常用的是执行完一个指令之后获取其执行结果,这个时候就不需要加echo指令了,直接使用>符号即可。看下面这个例子

ipconfig > C:UsersZeoyDesktop1.txt

(路径的引号可加可不加)
  上面这个指令实现的是执行ipconfig指令,然后将返回内容写入到txt文件中。参考链接
  不过,需要注意的是,以上两种方式如果指令中有特殊符号的话,需要使用^进行转义。此外,在C语言编写时,如果字符串中有特殊符号,也需要进行转义,但使用的符号是,所以在C语言中需要进行两次转义:

//命令行中的ipconfig > C:UsersZeoyDesktop1.txt
char s[50] = "ipconfig > ^"C:^\Users^\Zeoy^\Desktop^\1.txt^"";
system(s);

  脑洞大开:将上面两种操作结合一下,是不是可以实现在C语言中调用python代码执行的结果?这样也就是运行C语言程序要求具有python环境 [狗头]

附:一个讲得比较详细的博文

3. C语言中获取文件自身路径的方法 4. exit(0)与exit(1)、return区别
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/980298.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号