这一题怎么解要18年数二17题详细过程程

最近开发一个程序需要从c++端启動一个c#开发的程序,并传递参数

分析:在csharp端接收的参数比vc端发送的参数少一个,即vc端发送的第一个参数在csharp端没有接收到

看到这个结果,我觉得很有趣我想反过来如果从csharp端发送vc端接收结果会怎么样呢?

分析:在csharp端明明只发送了三个参数"参数1 参数2 参数3"但在C++接收端却接收叻四个参数,而且第一个参数是vc端程序的名称

argv)的区别。c/c++会将程序名称作为第一个参数接收而c#不会。如下:

分析:命令行中一个有四个參数“c:\vc.exe 1 2 3”第一个“c:\vc.exe”是程序名称,其他三个“1 2 3”才是真正的参数但结果将四个参数都接收并显示了,可见 C++将程序名称视为第一个命令行实参。

分析:命令行中一个有四个参数“c:\ csharp.exe 1 2 3”第一个“c:\ csharp.exe”是程序名称,其他三个才是真正的参数但运行结果没有显示程序名称,可见与C++ 不同,在 C# 中不将程序名称视为第一个命令行实参

所以,在从c/c++c#传递命令行参数时(使用CreateProcess来调用C#程序)一定要在这些参数前添加一个无用的参数。例如c#要接受的参数是“1 2 3,那么在c/c++端的命令行参数是“*** 1 2 3相反的,从c#c/c++传递命令行參数时c/c++接收的参数应该从第二个算起,因为第一个参数是程序的名称

}

专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

}

我要回帖

更多关于 18年数二17题详细过程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信