【问题标题】:Segfault while using wcslen in C在 C 中使用 wcslen 时出现段错误
【发布时间】:2018-02-16 16:42:27
【问题描述】:

在 C 中,我在执行时遇到了段错误

const wchar_t *id = L"{{content}}\0";
wprintf(L"%s\n", wcslen(id));

我不明白这里出了什么问题...有人可以启发我吗?

【问题讨论】:

  • 您是要打印字符串的长度,还是字符串?另外,你为什么首先使用 wchar_t ?在普通的 char 中使用 UTF-8 几乎总是更好(除非你在 Windows 上)。

标签: c string printf widechar


【解决方案1】:

您取消引用从 size_t 转换而来的指针,并且 wprintf 需要 %s 的指针。使用 %zu 显示长度。

【讨论】:

  • 哦,我明白了...非常感谢!
猜你喜欢
  • 1970-01-01
  • 2021-06-13
  • 2013-04-03
  • 2016-09-15
  • 2020-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-14
相关资源
最近更新 更多