天天看點

C語言實作Base64編解碼

in_str是輸入緩沖區的位址

in_len 要編碼的資料的長度

out_str 輸出的位址

需要在外面配置設定記憶體

unsigned char *out_str = (unsigned char *) malloc (in_len * 4 / 3 + 1);

然後再調用函數編碼。

網上的解碼函數,都是解碼成字元串的,如果解碼并儲存到檔案中,那麼往往會多儲存幾個位元組,主要是對base64字元串最後面的=号的判斷不夠,是以隻要自行實作了一下:

繼續閱讀