首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ctype结构中定义的ctype字符串不工作

在ctype结构中定义的ctype字符串不工作
EN

Stack Overflow用户
提问于 2012-08-31 13:20:59
回答 1查看 185关注 0票数 0

我在创建一个带有字符串的ctype结构并使用有意义的值初始化它时遇到了一些问题。

这是我的结构:

代码语言:javascript
复制
class MyStruct( Structure ):
    _fields_ = [ ("someString", c_char_p) ]

我正在尝试初始化它

代码语言:javascript
复制
obj = MyStruct( "something" )

当然,两次尝试都失败了。以下是错误消息:

obj_1= MyStruct(“某事”) TypeError:预期的字符串或整数地址,而不是str实例

如果我使用*c_char_p*运算符obj = MyStruct( c_char_p( "something“)),也会发生同样的情况。

我必须指出,此代码是在Blender 2.63a环境中执行的。

有人能帮我解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-31 13:25:34

您需要使用 method to instantiate

代码语言:javascript
复制
class MyStruct( Structure ):
    def __init__(self,some_string):
         self._fields_ = [ (some_string, c_char_p) ]

那么要建立一个新的结构,应该是:

代码语言:javascript
复制
obj = MyStruct( "something" )
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12216223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档