A C compiler that parses this code will contain at least the following symbol table entries

Consider the following program written in C:

// Declare an external function
extern double bar(double x); // Define a public function
double foo(int count)
{
double sum = 0.0; // Sum all the values bar(1) to bar(count)
for (int i = 1; i <= count; i++)
sum += bar((double) i);
return sum;
}

A C compiler that parses this code will contain at least the following symbol table entries:

Symbol name Type Scope
bar function, double extern
x double function parameter
foo function, double global
count int function parameter
sum double block local
i int for-loop statement

In addition, the symbol table will also contain entries generated by the compiler for intermediate expression values (e.g., the expression that casts the i loop variable into a double, and the return value of the call to function bar()), statement labels, and so forth.

https://en.wikipedia.org/wiki/Symbol_table

最新文章

  1. windows 中去除Ctrl+Alt+Del才能登录
  2. js随笔
  3. Linux之我见
  4. Mac系统下使用VirtualBox虚拟机安装win7--第三步 在虚拟机上安装 Windows 7
  5. 微信、QQ浏览器X5内核问题汇总
  6. NDK编译FreeImage
  7. Git和SSH协议
  8. 2013 Multi-University Training Contest 2
  9. 自定义switch开关
  10. Django项目部署到Apache服务器
  11. Python爬虫入门教程 43-100 百思不得姐APP数据-手机APP爬虫部分
  12. 快速找出网站中可能存在的XSS漏洞实践
  13. 翻译:delete语句(已提交到MariaDB官方手册)
  14. 当通过Nuget包管理器获取还原组时,出现 提示 “xxxxx”已拥有为“xxxxx”定义的依赖项
  15. XPATH语法(一)
  16. ML.NET 0.8特性简介
  17. Web应用获取文件路径的方法
  18. 一文让您全面了解清楚HBase数据库的所有知识点,值得收藏!
  19. Java Synchronized 关键字
  20. 原创-整理了下常用的js数组 、对象、数字、字符串的操作方法

热门文章

  1. Iterator 使用
  2. yum: Cannot find a valid baseurl for repo: migsrv解决方法
  3. bzoj3769
  4. Phpspy 2011继续身份验证绕过漏洞
  5. [软件安装]JDK
  6. E20180324-hm
  7. python 面向对象六 动态添加方法 __slots__限制动态添加方法
  8. 洛谷 P3731 [HAOI2017]新型城市化【最大流(二分图匹配)+tarjan】
  9. mysql 状态查询
  10. Spring Cloud Eureka配置文件例子与较为详细说明