Your compiler is working properly. What you are seeing is refered to as "name mangling". The added characters are used by the compiler and linker to describe the return type, number of arguments, and the argument types.The Borland compilers have an option for turning this off. I am not aware of an option for VC. However, I suspect you are exporting your function with "__declspec( dllexport )" instead of a .DEF file. If your project does not have a .DEF file then adding one should solve your problem. The following is all you should need:
; simple DEF file
EXPORTS
ABELN
Once you have a DEF file you will no longer need "__declspec( dllexport )".