c# 在dev c++中我的库缺少如何安装它[已关闭]

dfddblmv  于 2023-02-27  发布在  C#
关注(0)|答案(2)|浏览(206)

这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
3小时前关门了。
Improve this question
//我的代码是

#include <stdio.h>
int main() {
char txt[] = "xyz";
printf("%d", strlen(txt));
return 0;
}

//错误是strlen未在此范围中声明
//我的代码是正确的

pgx2nnw8

pgx2nnw81#

https://en.cppreference.com/w/c/string/byte/strlen表示:
在标题<string.h>中定义
P.S.它还说返回类型是size_t,它是无符号的,https://en.cppreference.com/w/c/io/fprintfsize_t的printf说明符是z,所以格式字符串应该是"%zu"

2ic8powd

2ic8powd2#

问题

  • 缺少strlen()的标<string.h>头。详细信息here
  • strlen的返回类型是size_t的返回类型,而不是int,因此使用%zu作为格式

修复:

#include <stdio.h>
#include <string.h>  // The header you were missing
int main(void) {
    char txt[] = "xyz";
    printf("%zu", strlen(txt));
    return 0;
}

相关问题