You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用rand/srand函数编译报错,ISO C99不支持隐式函数声明

问题解决:rand/srand函数未声明编译错误

你遗漏了包含**<stdlib.h>头文件**——rand()和srand()这两个随机数操作函数的声明定义在该头文件中。

在C99及后续的C语言标准里,编译器不再允许隐式函数声明(即直接调用未提前声明的函数),所以直接调用srand和rand会触发编译错误。而VSCode的默认运行命令可能使用了兼容旧C标准(如C89)的编译选项,旧标准允许隐式函数声明,因此能正常编译。

修正后的代码如下:

#include <stdio.h>
#include <stdlib.h>  // 新增:引入rand、srand函数的声明头文件

int main(void)
{
    srand(0);

    printf("%i", rand());
}

内容的提问来源于stack exchange,提问作者Alex Ironside

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 23:55:57