C函数中未声明的标识符标识符、函数、中未、声明

2023-09-04 01:42:39 作者:痛得体无完肤

当我编译以下C函数/程序时,我收到类似"missing ';' before 'type' 'remainder' : undeclared identifier"的错误-此函数有什么问题?

#include <stdio.h>

void conversionTo(int number,int base) {
  if(number==0)
    return;

  int remainder=number%base;    
  conversionTo((number/base),base);
  if(remainder<10)
    printf("%c",'0'+remainder);
  else
    printf("%c",'a'-10+remainder);
}   


int main() {
    conversionTo(int number,int base);
    return 0;
}

推荐答案

我不是C语言专家,但根据很久以前的经验,我认为不能在函数中间声明变量。

C语言中未声明标识符,可以怎样修改

此外,还不清楚您试图如何处理Function/Print语句。

试试:

#include <stdio.h>

void conversionTo(int number,int base) {
  int remainder=number%base;
  if(number==0)
    return;    

  conversionTo((number/base),base);
  if(remainder<10)
    printf("%c",'0'+ remainder); // Through the way ASCII works that gives the ASCII rep
                                 // of the remainder.
  else
    printf("%c",'a'-10+remainder); // Hex digits (A-F).
}   


int main() {
    conversionTo(/*Any number here*/10, /*any base number here*/2);
    return 0;
}
 
精彩推荐
图片推荐