在C语言中,同一个文件下这样肯定不能通过编译,会提示重复定义的。
如果是不同文件中,是有可能通过编译的。
对此一般处理是改名,因为你的这2个函数的参数性质不同,所以可以分别改为
void delayU8(unsigned char M)
void delayU16(u16 i)
我的想法是为啥不改个名字,这么做不是给自己增加麻烦吗
先不说编译不通过,这么写函数,自己看不也很麻烦。
这不是行不行的问题,这是不规范。
如果是单线程情形下,就不存在重入的问题,肯定是顺序执行的
多线程情况下不能用软件延时,很不准,非要用则需要定义多个软件延时函数
c语言不支持函数名相同的,c++是支持的,你需要更改其中一个delay函数的名字,改成delay_3X()就可以了,需要调用上面那个就使用delay_3x()调用就行了