在C函数中将二进制转换为ASCII,并将ASCII转换为字母?

在C函数中将二进制转换为ASCII,并将ASCII转换为字母?,c,function,C,Function,我有一个家庭作业要做,但我想知道在C语言中是否有一些函数可以转换8位二进制,比如01010111,它是87,字母是W 我将得到一个大集合,我只需要将二进制数存储在一个数组中并进行转换,然后我将组合所有的二进制数并返回到main()是的,该函数可以通过提供2作为最后一个参数来解析二进制字符串的文本表示形式(表示字符串表示基数为2的数字)。@Ali:第一个参数是包含二进制数的字符串,第二个参数是指向字符指针的指针,该指针是可选的(您可以提供NULL)它可以用来确定函数停止读取字符串的位置。最后一个参

我有一个家庭作业要做,但我想知道在C语言中是否有一些函数可以转换
8位
二进制,比如
01010111
,它是
87
,字母是
W


我将得到一个大集合,我只需要将二进制数存储在一个数组中并进行转换,然后我将组合所有的二进制数并返回到
main()

是的,该函数可以通过提供
2
作为最后一个参数来解析二进制字符串的文本表示形式(表示字符串表示基数为2的数字)。

@Ali:第一个参数是包含二进制数的字符串,第二个参数是指向字符指针的指针,该指针是可选的(您可以提供
NULL
)它可以用来确定函数停止读取字符串的位置。最后一个参数是正确的。它必须是
int
array或
char
array,这有什么关系吗?|那么你是说第二个参数只是为了告诉停止的位置?如果有函数的话,你是否可以从ASCII到字母指出我?@Ali:输入m必须是
char
数组,是的,第二个参数是一个输出参数,如果您提供
NULL
,它将被忽略(即您不关心函数停止的位置),但如果您提供
char**
,它将返回第一个参数中停止处理的位置。例如,如果您提供
“101010xyz”
,函数将在
x
处停止,并通过第二个参数返回
x
@Ali的位置:要将
strtol
的结果转换为
char
,只需将其强制转换。例如,
char c=(char)strol(“01010111”,NULL,2);
您可以使用
printf(“%c\n”,c);