use*_*189 4 c++ warnings gcc-warning
为什么我在"BIO_flush(b64);"行中收到此警告消息"警告:未使用值计算" 我怎么能摆脱它呢?
unsigned char *my_base64(unsigned char *input, int length)
{
BIO *bmem, *b64;
BUF_MEM *bptr;
b64 = BIO_new(BIO_f_base64());
bmem = BIO_new(BIO_s_mem());
b64 = BIO_push(b64, bmem);
BIO_write(b64, input, length);
BIO_flush(b64);
BIO_get_mem_ptr(b64, &bptr);
unsigned char *buff = (unsigned char *)malloc(bptr->length+1);
memcpy(buff, bptr->data, bptr->length-1);
buff[bptr->length-1] = 0;
BIO_free_all(b64);
return buff;
}
Run Code Online (Sandbox Code Playgroud)
orl*_*rlp 14
处理这些错误的常用方法是"明确地转换返回值":
(void) BIO_flush(b64);
Run Code Online (Sandbox Code Playgroud)
或者,您可以选择通过添加-Wno-unused-value标志来完全关闭此警告.
以上显然假设您对返回值不感兴趣.如果您不确定,请在文档中查看它返回的确切内容,并决定是否要存储/使用此文件.
| 归档时间: |
|
| 查看次数: |
6125 次 |
| 最近记录: |