Problem converting int to char...

I'm trying to place an int into a char[0]. Looking at this code:

void setup() {
  Serial.begin(115200);
}

void loop() {

  int a=5;
  char b=a;
  char c='5';

  Serial.print("a isDigit()=");
  Serial.println(isDigit(a));

  Serial.print("b isDigit()=");
  Serial.println(isDigit(b));

  Serial.print("c isDigit()=");
  Serial.println(isDigit(c));

  Serial.println("---");
  delay(1000);
}

I'm trying to place the int a into the char[0] b, and have the results be the same as if I wrote:

char b='5';

When done, it should evaluate true to isDigit().

I know that's a confusing description, let me know if that's not clear, and thanks for any help.

int anInt = 5;
char aChar;

void setup()
{
  Serial.begin(115200);
  aChar = anInt + 48;
  Serial.print(aChar);
  Serial.println(isDigit(aChar) ? " is a digit" : " is not a digit");
}

void loop()
{
}

Why add 48? Would it not make more sense to add ‘0’? I know it’s the same but it makes the intent a little clearer.

sterretje:
Why add 48? Would it not make more sense to add '0'? I know it's the same but it makes the intent a little clearer.

I am not convinced that it makes the intent any clearer. Perhaps a variable named asciiOffset with a value of 48 would make it clearer.

In any case, I suspect that the OP has bigger problems such as when he refers to placing the into

the char[0] b