如何理解代码的跨平台?
跨平台性:
跨平台性意味着,在多个平台都兼容运行
那么是怎么做到跨平台?
一般来说,window的操作系统和Linux的操作系统肯定是不一样的
那么提供的系统调用接口和诸多细节也是不一样的
但是,我们的c语言和c++语言,却可以同时再windows和Linux下运行
例如用户使用的printf和scanf函数,在windows和Linux下效果是一样的
为什么?
这是因为在Linux下,给你提供了Linux版本的库函数
在windows下,给你提供windows版本的库函数
这些函数的名字都叫做printf、scanf,返回值,处理逻辑等都一样
所以,尽管不同的操作系统提供不同的系统接口
但是,我们对这些系统接口再做了一层封装,这个就是所谓的库函数,例如c++的
事实上底层的细节是不一样的,但是你看不到
这就是跨平台性的本质,核心是提供了对应版本的库函数
而不具备跨平台性,就意味着没有提供对应的库函数
这就导致函数名、函数返回值、函数逻辑等都不一样,自然就不可以运行,即所谓不兼容,不具备跨平台