C/C++ 传递信息给Java

#开始

  今天有人问我C++怎么给Java传递消息

  大概需求是 用C++写了一个窗口 需要把编辑框里面的东西传递给Java做处理

 

#解决过程

  我现在能想到的有三个简单的方法

    1. Socket编程 通过网络编程跨进程,优点是建立链接之后可以多次传递,缺点是实现代码可能有点多

    2. 通过调用命令行 优点是代码简单,缺点是不能多次传递数据

    3. C++写文件,java读文件 效果折中

 

    ~4.似乎管道可以跨语言

  

  因为现在的问题是只需要传递一个编辑框的内容 所以,采用第二种方法

#思路

  C/C++可以通过包含windows.h头文件 使用system();函数调用命令行命令(cmd命令),java的jar包可以通过 java -jar [包名].jar 的方式运行jar文件

 

#代码

C:

 1 #include<windows.h>
 2 #include<stdio.h>
 3 #include<conio.h>
 4 
 5 void main()
 6 {
 7     char cmd[1024]="java -jar pack.jar ";
 8     char Array[512];
 9     printf("输入参数:");
10     scanf_s("%s",Array,512);
11     strcat_s(cmd,Array);
12     system(cmd);
13     _getch();
14 }

 

java:

  

 1 package 参数测试;
 2 
 3 public class mainClass {
 4 
 5     public static void main(String[] args) {
 6         System.out.println("参数数目: "+args.length);
 7         for(int i=0;i<args.length;i++)
 8         {
 9             System.out.println(args[0]);
10         }
11     }
12 
13 }

 

  在java环境配置好的情况下,把C程序和jar放一块儿 运行C程序

  

 

#备注

  有问题评论区留言哦

 

posted @ 2018-10-16 19:05  Startu  阅读(1240)  评论(0编辑  收藏  举报