It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center
                            
                        
                    
                
                                7年前关闭。
            
                    
我知道使用静态定义(例如:static int toto;)是为了使函数或变量仅在本地文件中而不在整个源代码中可见。

我想知道静态定义是否会产生影响:


关于二进制程序执行的性能?
关于代码存储器的存储器大小的优化?
优化数据存储器的内存大小?

最佳答案

静态只是使变量或函数在当前翻译单元(当前源文件)中可见的方式,这意味着global static变量具有internal linkage

因此,当然,构建每个标识符都具有内部链接的可执行文件的速度会更快,因为链接器无需解析外部符号或更少数量的外部符号。

但是在不知道平台,编译器及其版本的情况下不能肯定地说,所以这只是一个一般性的解释

08-26 22:08