fwrite后char数据的值发生变化

发布于 2024-09-10 09:20:32 字数 1456 浏览 9 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

帅气尐潴 2024-09-17 09:20:33

如果 value_str 在包含 fwrite 的行之前都没有改变,那么 fp_to_str 必须返回 NULL (因为指针是初始化为 NULL 并且您报告该值没有更改)。 NULLfp_to_str 的有效返回值,还是可能表示错误?

If value_str does not change until the line containing fwrite, then fp_to_str must be returning NULL (since the pointer was initialized to NULL and you report that that value doesn't change). Is NULL a valid return value from fp_to_str, or might that indicate an error?

×眷恋的温暖 2024-09-17 09:20:32

除了 Adrian McCarthy 所说的之外:

value_str = fp_to_str(ddata[i]) ;
strLength= strlen(value_str) ;
value_str[strLength+1] = 10 ;
num = strlen(value_str);

这里 num 将等于 strLength,这让我认为您不确定自己在做什么。 (你在做什么?)你已将值 10(魔法常量 - 这是换行符吗?使用“\n”)添加到空终止符之后的空格中。你的字符串是:

o  W  o  r  l  d  \0 \x10

In addition to what Adrian McCarthy said:

value_str = fp_to_str(ddata[i]) ;
strLength= strlen(value_str) ;
value_str[strLength+1] = 10 ;
num = strlen(value_str);

num will be equal to strLength here, which makes me think you're not sure as to what you're doing. (What are you doing?) You've add the value 10 (Magic constant - is this a newline? Use '\n') to the space after the null terminator. Your string is:

o  W  o  r  l  d  \0 \x10
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文