#开始
今天有人问我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程序
#备注
有问题评论区留言哦