小编ack*_*sha的帖子

Java名称解析库?

我正在寻找一个类似于Perl Lingua :: EN :: NameParse模块的库.从本质上讲,我想解析像'先生'这样的字符串.Bob R. Smith'成为前缀,名字,姓氏和名称后缀组件.谷歌在找到这样的东西方面没有多大帮助,如果可能的话,我宁愿不自己动手.有人知道OSS Java库可以以复杂的方式做到这一点吗?

java parsing

17
推荐指数
3
解决办法
4749
查看次数

Python ctypes in_dll字符串赋值

我可以使用一些帮助使用ctypes分配DLL中的全局C变量.

以下是我正在尝试的一个例子:

test.c包含以下内容

    #include <stdio.h>

    char name[60];

    void test(void) {
      printf("Name is %s\n", name);
    }
Run Code Online (Sandbox Code Playgroud)

在Windows(cygwin)上我构建了一个DLL(Test.dll),如下所示:

gcc -g -c -Wall test.c
gcc -Wall -mrtd -mno-cygwin -shared -W1,--add-stdcall-alias -o Test.dll test.o
Run Code Online (Sandbox Code Playgroud)

当尝试修改name变量然后使用ctypes接口调用C测试函数时,我得到以下内容......

>>> from ctypes import *
>>> dll = windll.Test
>>> dll
<WinDLL 'Test', handle ... at ...>
>>> f = c_char_p.in_dll(dll, 'name')
>>> f
c_char_p(None)
>>> f.value = 'foo'
>>> f
c_char_p('foo')
>>> dll.test()
Name is Name is 4???
13
Run Code Online (Sandbox Code Playgroud)

为什么测试功能会在这种情况下打印垃圾?

更新:

我已经确认了亚历克斯的回应.这是一个工作示例:

>>> from ctypes import …
Run Code Online (Sandbox Code Playgroud)

python ctypes

4
推荐指数
1
解决办法
2828
查看次数

标签 统计

ctypes ×1

java ×1

parsing ×1

python ×1