当尝试赋值函数指针时,得到"Void value not ignored as it to be"的错误信息是因为在赋值过程中,将一个返回类型为void的函数赋值给了一个函数指针,而函数指针的类型应该与被赋值函数的返回类型一致。
在C语言中,函数指针的声明和赋值需要注意以下几点:
- 函数指针的声明:函数指针的声明需要指定函数的返回类型和参数类型。例如,声明一个返回类型为int,参数为两个int的函数指针可以使用以下语法:
int (*funcPtr)(int, int);
- 函数指针的赋值:将函数的地址赋值给函数指针时,需要确保函数指针的类型与被赋值函数的类型一致。如果被赋值函数的返回类型是void,那么函数指针的类型也应该是返回类型为void。例如,将一个返回类型为void,参数为两个int的函数赋值给上述声明的函数指针可以使用以下语法:
funcPtr = &voidFunc;
- 函数指针的调用:通过函数指针调用函数时,可以使用以下语法:
(*funcPtr)(arg1, arg2);
,其中arg1和arg2是函数的参数。
综上所述,当尝试赋值函数指针时,得到"Void value not ignored as it to be"的错误信息是因为函数指针的类型与被赋值函数的返回类型不一致。要解决这个错误,需要确保函数指针的类型与被赋值函数的返回类型一致。
腾讯云相关产品和产品介绍链接地址:
- 腾讯云函数计算(云函数):https://cloud.tencent.com/product/scf
- 腾讯云容器服务(TKE):https://cloud.tencent.com/product/tke
- 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
- 腾讯云服务器(CVM):https://cloud.tencent.com/product/cvm
- 腾讯云人工智能(AI):https://cloud.tencent.com/product/ai
- 腾讯云物联网(IoT):https://cloud.tencent.com/product/iotexplorer
- 腾讯云移动开发(移动推送):https://cloud.tencent.com/product/umeng
- 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
- 腾讯云区块链(TBaaS):https://cloud.tencent.com/product/tbaas
- 腾讯云虚拟专用网络(VPC):https://cloud.tencent.com/product/vpc
- 腾讯云安全产品(SSL证书、DDoS防护等):https://cloud.tencent.com/product/security