我有以下功能
uint8_t func(){
uint8_t key[16] = {0};
// some operations
return key;
}
我在主要功能中调用此功能
int main(void){
uint8_t rcKey[16] = func();
for (int i = 0; i < 16; i++)
{
printf("%x ", rcKey[i]);
}
}
我在这里做错了什么?我收到无效的初始化错误
数组不能直接通过函数调用进行初始化。您只能将单个元素初始化为初始化列表的一部分。
相反,您可以做的是将数组传递给函数以设置相关值。
void func(uint8_t key[]){
// some operations
}
int main(void){
uint8_t rcKey[16]
func(rcKey);
for (int i = 0; i < 16; i++)
{
printf("%x ", rcKey[i]);
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句