gpt4 book ai didi

c - 通过引用将字节加载到 C 字符串中

转载 作者:太空宇宙 更新时间:2023-11-04 05:59:13 24 4
gpt4 key购买 nike

我正在尝试将 0x000xff 的字节值分配给带有函数的 C 字符串,并报告生成的字符串的长度。我试图朝着正确的方向前进,但似乎陷入了一个相当令人沮丧的问题。

下面的代码显示了我尝试将字节值加载到变量(通过引用传递)charset。代码编译并运行,但不输出任何内容。但是,如果我取消注释 loadCharset for 循环中的第二行,它将打印所有需要的值。我似乎遗漏了一些有关如何将这些值分配给 C 字符串的信息。

int loadCharset(int setname, char charset[], int *setlen){ //string sName){
for (int i = 0x00; i <= 0xff; i++){
charset[i] = i;
// printf("%c", i);
}
// *setlen = 256;
}

int main() {
char charset[256];
int* setlen;
loadCharset(1, charset, setlen);
printf("%s", charset); // yields no output
}

最佳答案

charset 数组的第一个元素是0x00,它是字符串终止符,告诉printf 到此为止——不打印任何内容.将 printf 替换为:

fwrite(charset, sizeof (charset), 1, stdout);

它允许您明确指定要打印的数组的长度。

关于c - 通过引用将字节加载到 C 字符串中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21921746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com