我最近使用WinSock编写代码,当我尝试调用WSAStartup时,编译器抛出了这个错误:
我之前处理过这类问题,它们并不是什么大问题,我一定错过了一个定义或者其他什么。但是,这个主题是针对不同的主题: @ 8是什么意思?对WSAStartup @ 8'
的未定义引用
如果您尝试编译没有main函数的文件,它会抛出:
对WinMain @ 16'
的未定义引用
再次,臭名昭着的@Number。我试着在网上查一下,但说实话,我不知道从哪里开始,因为我最终得到的是编译错误的解决方案,与@ 16或@ 8或@的原点无关X
我一直在想的另一件事是,引用的是什么:
`东西'
为什么起始报价与结尾报价不同?并且首先使用反引号(`)是什么意思?
答案 0 :(得分:2)
数字是它的函数参数的字节。
来自MSDN:
对于__stdcall函数,名称包括" @"字符和十进制数,指定其函数参数中的字节数。例如,LoadLibrary函数的修饰名称是LoadLibrary @ 4。对于C ++函数,名称修饰更复杂,因编译器而异。