2024年 3月 23日

如何获取环境变量?

Windows可打开系统/属性里面的环境变量窗口查看,*nix可以利用env命令查看。从开发的角度,可以用getenv函数获取环境变量。 为何需要重启环境变量才生效? 你一定经历过,在设定某个环境变量...

进一步了解
2024年 3月 23日

理解到底什么是环境变量?

环境变量的产生,是为了解决在一个系统下操作,不需要无时无刻指定系统特定路径,减少使用者的负担。形如,一个维护者想要执行ping命令查看系统状况,不需要指定全路径/usr/bin/ping或者C:\Wi...

进一步了解
2024年 3月 23日

什么是UCRT?

从Visual Studio 2015开始,CRT被重构成UCRT. UCRT已变成Windows 10组件的一部分。UCRT统一了微软对于不同子平台CRT不同的缺点,可以统一维护。

进一步了解
2024年 3月 22日

abort和exit退出程序有什么不同?

从实现来看,abort只是简单的发送SIGABRT信号,操作系统内核收到此信号,会尽快终止进程,注意,内核是不知道进程用户态有什么资源要释放的(尽管它可以查到),只会终止进程,这可能造成一些资源未清理...

进一步了解
2024年 3月 22日

如何理解C语言的未定义行为?

C语言自由灵活,未定义行为其实是标准对实现的放宽,即,一种行为如果可能产生错误,那标准不必要规定会有什么错,是内存泄漏、程序终止或者其他诡异的行为,只需要提示此行为未定义,具体交给实现。这种做法是标准...

进一步了解
2024年 3月 22日

为什么C语言是可移植性语言?

准确的说,任何一门不直接编写和硬件相关代码的语言,都具备可移植性。高级语言形如写了接口,只要有对应硬件平台的编译器,就可以生成相应代码。从这个角度,Java也是这样的,只不过换成了不同平台的JVM.

进一步了解