程序接收二进制数的字符数组,并将值更改为其二进制补码。我编译和错误状态我在某处错过了一个标点符号..好的,谢谢我修复了第二行的分号,现在我得到未定义的引用二进制补充任何想法?
#include <stdio.h>
void twosComplement(char binaryString[]);
int main()
{
char binaryString[33];
scanf("%32s",binaryString); //takes in Binary Number 32 bits max
twoscomplement(binaryString);//calls function
printf("%s\n", binaryString);//prints twosComplement of Binary Number input
return 0;
}
void twosComplement(char binaryString[])
{
char zero = '0';
char one ='1';
int numBits;
for( numBits = 0; binaryString[numBits]; ++ numBits) //iterates through all the characters
{
if( numBits == one)// changes value if character == '1'
{
binaryString[numBits]= zero;
}
else
{
binaryString[numBits]= one; // changes value is character doesn't == '1' assuming user only input '0's and '1's
}
return;
}
}
答案 0 :(得分:0)
在第二行中,您缺少分号;
:
void twosComplement(char binaryString[]);
答案 1 :(得分:0)
在声明功能行2时缺少分号
#include <stdio.h>
void twosComplement(char binaryString[]);