dongsmail
2021-01-19 13:35
采纳率: 100%
浏览 97
已采纳

python 调用c语言函数 返回值char*中包含的中文不能正确显示

//c语言
char* GetData()
{
    char buf[64];
    sprintf_s(buf, 64,("执行成功"));
    return buf;
}

# python
lib.GetData.restype = ctypes.c_char_p
str1 = lib.GetData()
print(str1)
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 502203305 2021-01-19 14:53
    已采纳

    不建议使用局部变量的指针作为返回值,数据会被后续函数覆盖。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • dongsmail 2021-01-19 15:39

    已解决,确实是这个问题,还是谢谢你的提醒

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题