Мое назначение - напечатать двоичное значение десятичного числа, и я хочу контролировать размер массива, поскольку я понял, что должен сделать это, моя программа будет работать во всех компиляторах.sizeof с массивами в c
я кратко не понимаю SizeOf оператора, но я бы appriciate, если вы можете объяснить, где я должен, и почему, поставил SizeOf в моей программе:
void translate_dec_bin(char s[]){
unsigned int decNum;
char st[MAX_LEN] = { 0 };
int j = 0;
sizeof(decNum, 4);
decNum = atoi(s);
while (decNum > 0){
st[j] = decNum % 2;
decNum = decNum/2;
j++;
}
while (j >=0){
printf("%d", st[j]);
j--;
}
printf("\n");
}
Моя мысль в том, что когда я печатаю номер, то есть в коде:
printf("%d", st[j]);
Я должен поставить оператора. Это правильно?
'sizeof' является одноместной operator: требуется только один операнд, а не два операнда. – ouah
спасибо @ouah. если я напишу decNum = sizeof (без знака); это поможет моей цели? – Alan
Sizeof принимает выражение как операнд. 'expression1, expression2' является выражением. (но, вероятно, не то, что было предназначено) – wildplasser