Base64 Encoding not decoding because of determine size

I've been at this for a few hours now trying to figure out how to fix it.

The error I am getting is:

initializer fails to determine size of 'input2'

The sketch is:

Serial.println("Base64 example");

// encoding
char input[] = "Hello world";
int inputLen = sizeof(input);  
int encodedLen = base64_enc_len(inputLen);
char encoded[encodedLen];

Serial.print(input); 
Serial.print(" = ");

base64_encode(encoded, input, inputLen); 

Serial.println(encoded);

// decoding
char input2[] = encoded;
int input2Len = sizeof(input2);

int decodedLen = base64_dec_len(input2, input2Len);
char decoded[decodedLen];

base64_decode(decoded, input2, input2Len);

Serial.print(input2); 
Serial.print(" = "); 
Serial.println(decoded);

What I am trying to do is take the input that was encoded in Base64 and decode it so that I know that it works. I just can't seem to get encoded to decode!

char input2[] = encoded;

That’s not how you copy an array. You have to copy elements over one by one or use memcopy.

Delta_G:

char input2[] = encoded;

That's not how you copy an array. You have to copy elements over one by one or use memcopy.

Would you mind showing an example of what you are suggesting?

http://www.cplusplus.com/reference/cstring/memcpy/