不是viod,是void。void才表示没有返回值。
加分号的话相当于一个叫做viod的标识符和一个没写返回类型的函数声明。函数不显式声明返回类型的话默认为int,这只在C99之前有效。
viod后不加分号,则相当于你试图让函数返回viod类型,但这个类型是不存在的。
1,分号是C语言的结束标识,你加了分号是2条语句
viod;/*这里你应该拼错了 /
delay(xxxx);
2,不加引号 变成 viod delay(xxx);/ 由于viod拼错导致编译器无法解析这句话 */
3,正确写法应该是 void delay(xxx);
手写不易如有收获请采纳