【问题标题】:C++ cast char * to unsigned charC++ 将 char * 转换为 unsigned char
【发布时间】:2016-11-26 16:16:15
【问题描述】:

我在一个必须使用 的 c++ 项目中工作,并且我特别使用了 SHA1 函数。我的问题是,该函数接收 unsigned char[],我需要将处理后的参数作为参数传递给程序:

int main(int argc, char* argv[])
{

  unsigned char message[] = argv[1];

  /* program continues using message */

}

我得到的错误如下:

error: array initializer must be an initializer list or string literal
const unsigned char message[] = argv[1];
                    ^

所以我没有将参数输入适当地转换为“消息”变量,以适当地调用 SHA1 函数。

谢谢!!

【问题讨论】:

    标签: c++ casting unsigned-char


    【解决方案1】:

    无法从指针初始化数组。您可能应该改用unsigned char *

    unsigned char *message = reinterpret_cast<unsigned char *>(argv[1]);
    

    【讨论】:

      猜你喜欢
      • 2011-10-19
      • 2013-09-23
      • 1970-01-01
      • 2020-05-03
      • 2018-03-27
      • 2020-10-11
      • 2011-10-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多