【Java和C中的位移差异 – 如何协调】教程文章相关的互联网学习教程文章

Java和C应用程序之间的IPC

我有2个应用程序,一个用C语言编写,另一个用Java编写,假设在同一台机器上运行.在它们之间实施IPC的最佳方法是什么? 最佳意义的可移植性,最小的用户意识(防火墙弹出窗口……)等.解决方法:我会使用套接字循环回来开始.这允许您发送文本或二进制数据,并在一个进程启动或死亡时干净地处理.延迟大约为20-50微秒,具体取决于您对数据执行的操作以及发送的数量. 套接字是独立于平台的,可以在纯Java中使用. Java有数百万个示例和教程可供使用...

修改double中的最低有效位(Java和C)

如何在Java和C中将双N的最低有效位设置为零?在我的计算中,1699.3000000000002中的“… 002”是由数值误差引起的,所以我想将其消除.解决方法:在Java中,1e-12 * Math.rint(1e12 * x)将围绕一个double并返回一个double作为结果. 在C中,你可以写1e-12 * floor(1e12 * x 0.5). 但请注意,如果1012x恰好在两个整数之间,则这些行为会有所不同. Java版本将向偶数舍入,而C版本将向上舍入.

java – c:当不为空/空检查时【代码】

我有一个形式变量ftDtClo定义形式,如,public String getFtDtClo () {String dateStr = "";if(this.getCse().getDtClo()!=null) {dStr = DtUtil.formatDate(this.getCse().getgetDtClo(), DtUtil.FORMAT_MM_DD_YYYY_KK_MM_SS);}return dateStr; }在JSP中,代码看起来像,<c:choose><c:when test="${not empty cseList.ftDtClo}"><c:out value="${cseList.ftDtClo}"/></c:when></c:choose>但我得到了foll例外,wrapped exce...

java – C列出用法【代码】

在Java中有一个名为ArrayList的集合.它允许程序员添加类型为T的对象,并通过发出一个简单的方法来删除它们list.remove(object); list.add(object);对于C我发现标准向量只使用值对象,所以我没有看到实现相同功能的方法.这种情况是我想在其他地方持有对象的引用,为什么能够使用某种合成模式删除或添加它.我要求的是如何在C中实现这样的事情:class Composite {ArrayList<Composite> children = new ArrayList<>();public void addChil...

Java和C中最简单的RPC

我正在寻找一种允许Java和C应用程序之间的RPC的非常简单的方法. 我的系统包含几个Java模块和一个C模块.我没有太多不同的程序来调用(每个模块大约2-3个),并且它们不会有太大变化(除了一些小的改编,例如添加新程序或更改一个原型).我正在编写所有模块,所以我可以使用我想要的任何东西.此外,模块将在同一台机器上执行,除了一个,但是在另一台机器上执行其中一些模块的可能性没有太大的骚扰(基本上只是更改配置文件)将是一个加号. 用于此...

java – 为C编写C扩展的好处

我是一名新的Ruby程序员,并且正在查看一些教程,用于编写Ruby语言的C代码扩展,我想知道:这样做有什么好处?我个人正在考虑这个,因为我将来必须为一个班级做一个团队项目,我很确定我是唯一一个做Ruby开发的人,但大多数人都知道C所以我可以让他们写我理论上可以在我自己的Ruby开发中使用的C代码.但通常情况下,这是做这件事的主要原因还是我不知道的事情?另外,我的想法是否适用于你的观点(当我将其集成到Ruby中以进行整体项目时,有人...

eclipse – 无缝地调试Java和C代码

我有一个用Java和C编写的项目通过JNI进行通信.到目前为止,我一直在使用IntelliJ Idea来调试Java代码,以及用于C代码的Linux本机调试器. 当我在寻找替代方案时,我认为使用Eclipse进行调试对于java和c都是最好的想法.实现这一目标的步骤是什么? (显然我想导入我当前的项目). 我是Linux 64位用户,使用eclipse Juno.解决方法:Debugging JNI C and Java code in Eclipse可以帮到你.否则,How to Use Eclipse to Debug JNI code (Java & C...

突发!Python再次第一,Java和C下降,凭什么? ​【图】

编程语言流行指数(PYPL)排行榜近日公布了2019年8月份榜单。 在最新一期榜单上, Python的份额高达28.73%,再次蝉联第一,并且增长4.5%,同时成为增长势头较好的语言。而被挤到第二蝉联Java,同比下跌2.1个百分点 ,C/C++已经被挤出前三甲。正所谓“人红是非多”,最近Python就遇到了这样的问题。 与国际技术社区上一片「形势大好」对比鲜明的是,国内技术圈却一直存在对Python,「力挺」和「吃瓜」两派阵营,针锋相对,那么,Pyth...

java & c comparison

java java abstruct class ? ? ? ?抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。 ????? ?由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段决定要不要设计抽象类。

java和C 11易失

我想将一些代码从Java移植到C 11,我对volatile关键字感到困惑. 我不熟悉Java语言,我不知道它是什么变量.它保证每个线程都可以访问变量的最新值 – 它是C volatile行为.但它通常用于同步 – 是对volatile变量原子执行的所有操作吗? 所以我认为C 11对Java volatile的良好替代将是std :: atomic.或者我完全错了,因为我错过了一些额外的Java volatile功能?解决方法:是的,他们将是一个很好的匹配,在Dr Dobbs有一篇很好的文章.In a nut...

Java和C中的位移差异 – 如何协调【代码】

我在C中有一些代码,我正在尝试移植到Java,并且存在一个我无法解决的问题. 通过一个例子可以很容易地看到它.在C代码的某个阶段,我有一个unsigned int h,其值为594076817.然后我计算(h << 10).我得到的结果是2744271872.在Java中,我有一个很长的594076817.然后我计算(h <<< 10),我得到608334660608.我理解/怀疑这是由于表示的差异(unsigned vs signed)并试图沿着这些方式阅读而无济于事.使Java代码获得与C代码相同的结果的最佳方法是...

java – C toString运算符similair到Object.toString

在Java中,每个Object都有一个toString方法和一个哈希码方法.C中的每个对象都有等效的哈希码和toString吗?解决方法:没有等价物.与JAVA不同,C中的所有内容都不是从某些(Object)超类派生的.没有:: toString()成员函数,因为C中没有超类. C也不支持反射. 话虽如此,有一个std::to_string功能,内置类型有9种不同的重载.要获得所需的功能,您可以为每个类提供overload输出流operator.

D转换器:有没有办法将D语言转换为java或C?

由于D接近C,我想知道是否已有翻译器. 如果没有,您还有其他中间解决方案吗?解决方法:有TDC,这是一个废弃的努力将D转换为C.还有TioPort,它朝着相反的方向并将Java转换为D.我不确定它是否有效. 最后,我认为LLVM可以将其字节代码转换为(完全不可读的)C代码. LDC可以使用LLVM编译D代码,我认为(我不确定)它可以输出字节代码而不是本机代码.

java – c基本字符串操作【代码】

有一个简单的字符串操作问题,您需要反转每行的单词:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=121&page=show_problem&problem=424 所以:I love you. You love me. We're a happy family.会成为:I evol .uoy uoY evol .em er'eW a yppah .ylimaf现在,我编写了一个简单的java解决方案,它看起来像:BufferedReader file = new BufferedReader(new InputStreamReader(System.in)); String s;...

Java与C:使用Web服务的应用程序中的性能

我正在尝试创建一个从不同Web服务获取数据的消费者应用程序.应用程序必须处理实时大容量数据.我必须在性能的基础上在Java和C之间做出选择.请建议. 谢谢.解决方法:网站的性能差异不如您提供的技能组别重要.用一种语言编写得很好的应用程序比另一种语言编写得不好的应用程序要快. 恕我直言,你真的需要知道你在C中做了什么来编写一个写得很好的应用程序,在Java中它更容易编写一个写得好的程序,因为它不需要相同的技能水平. 我同意@Jas...