gpt4 book ai didi

c - c 中带有 unsigned char 的空指针

转载 作者:行者123 更新时间:2023-11-30 16:56:23 26 4
gpt4 key购买 nike

我正在用 c 构造一个 unsigned char * ,我想知道如何完成它。因此,通常在我的内存末尾,我会输入 '\0' 但 unsigned char 将其识别为 0。

所以当我做类似的事情时:

void complement(unsigned char *c, int n){
while(*c!='\0'){
printf("%d\n", n-(*c));
c++;
}
}

当我读到“0”时它停止(当我读到 0 时我想打印 n,补码)

那么我可以使用什么来为我的 while 提供适当的结束条件?

最佳答案

也许你可以像这样从 while 切换到 do-while ?

#include <stdio.h>

void complement(unsigned char *c, int n)
{
do{
printf("%d\n", n-(*c));
printf("The character is %c\n", *c); // Just for debugging...
}while(*(c++)!='\0');
}

int main(){
unsigned char *toPrint = (unsigned char *)"Print me!\0";
complement(toPrint, 0);
return 0;
}

关于c - c 中带有 unsigned char 的空指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39932653/

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