C库函数传送字符串参数给java(如何用c语言编一个函数 实现字符串作参数传递,给个编译过的程序)

2024-03-31 16:20:02 :55

c库函数传送字符串参数给java(如何用c语言编一个函数 实现字符串作参数传递,给个编译过的程序)

大家好,c库函数传送字符串参数给java相信很多的网友都不是很明白,包括如何用c语言编一个函数 实现字符串作参数传递,给个编译过的程序也是一样,不过没有关系,接下来就来为大家分享关于c库函数传送字符串参数给java和如何用c语言编一个函数 实现字符串作参数传递,给个编译过的程序的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!

本文目录

如何用c语言编一个函数 实现字符串作参数传递,给个编译过的程序

st 传入子程序, st2 从子程序送回.---------------------------#include 《stdio.h》 void show_st( char *st, char *st2){printf("%s\n", st);strcpy(st2,"new string !!");}void main() {char st="This is string !";char new_st;show_st( &st);printf("new string is: %s\n", new_st);exit(0);}

在C中如何调用java程序

C语言调用Java,还有Java调用C,都使用到JNI技术,C语言调用需要创建Java虚拟机,可查看函数JNI_CreateJavaVM、DestroyJavaVM的资料,函数声明在jni.h头文件(JDK)中。需注意参数类型转换,两种语言的参数类型和传递有讲究,有多个返回的话,必须传递对象参数进行处理。

在c++程序中用JNI技术调用java中的函数,怎样给这个java函数传String[]类型的参数

貌似不好办。不过,你可以将字符串数组构造成一个长字符串,比如说用~r~n作为分隔符,然后再解析。

android 中C/C++的传递基本数据类型到java函数的参数

如果是要做实参改变,就是用指针呀。将函数修改为bool getVal(int* num);调用的时候是getVal(#);但是不是很明白是不是要这个效果。

如何在c语言中使用java传入的String

如何在c语言中使用java传入的字符串s,也就是说如何使用jstring类型。那么在c语言实现中如何使用传入的字符串s? 我们知道java中的String,c语言中应该对应的是char*类型,也就是说我们在jni的c语言实现中如何把jstring类型转换成为char*即可。 方法是这样的: 在c文件中声明char* str,然后 str= (char*)(*env)-》GetStringUTFChars(env, jstring,NULL); 这样就可以得到传入的字符串,过程如下: JNIEXPORT jstring JNICALLJava_Test_sayHello (JNIEnv * env, jobject obj, jstring s){ char * str; str=(char*)(*env)-》GetStringUTFChars(env,s,NULL); printf("%s",str); (*env)-》ReleaseStringUTFChars(env, s, str); ......} 当然,java中有垃圾回收机制,二c语言没有,那么使用完该字符串之后该如何处理呢?字符串str使用完后,需要通知虚拟机平台相关代码无需再访问,方法是 (*env)-》ReleaseStringUTFChars(env, jstring, str); 最后还要说一下,如果传入传出的字符串是中文,就又有问题了,我们需要手工进行uncode编码,否则就是乱码,当然如果程序设计合理,这里一般情况下尽量避免进行汉字的传递。 呵呵,就这样了!

C的函数转换成java

使用词法分析可以简单的进行转换,不过问题是接口,java使用的库类和函数,c并不一定拥有,而且java运行的方式不同(java可以说是解释器的脚本,而c最终变成指令集),并不是简单给出一个函数调用位置就可以解决的,目前的话可以实现个转化器(如果你学过编译原理),但前提是不使用接口,或许我们可以像编译器对string类型的支持那样实现所有java的库操作,但这显然是鸡肋,因为这种方法写的java程序转换后是很难移植的(显然我是说硬件厂商不会为你天真的想法提供接口),并且对c风格来说是一种极大的破坏,最后生成的代码既没有效率也没有可移植性和可读性结论是你还不如自己实现一个,即使你要转化一个大游戏,这样也有效多了

如果你还想了解更多这方面的信息,记得收藏关注本站。

c库函数传送字符串参数给java(如何用c语言编一个函数 实现字符串作参数传递,给个编译过的程序)

本文编辑:admin
Copyright © 2022 All Rights Reserved 威海上格软件有限公司 版权所有

鲁ICP备20007704号

Thanks for visiting my site.