1,我们在用gdb跟踪程序的时候,发现有些变量不是很好的跟踪调试,这个时候加全局变量可以更好的用gdb跟踪,而且我们在最开始写代码调试的时候用gdb调试,但是我们在代码进入集成和终试的时候再用gdb就不合适了,这个时候我们需要打印每个接口函数里面的数值,这样的话我们用打印开关或者打印函数来辅助我们来查找问题,所以我们定位我们的问题的时候要分情况,开发初期我们用gdb作为主要手段,打印作为辅助手段,而在进入集成的时候主要用打印函数和打印开关来判断那个函数返回出错和打印参数的正确与否。
举例说明:(OTN_PRINTF等价于printf)
其中g_alm_real_gather用来直接保存第一手数据的,其中SDA_OTN_DEBUG是打印函数 ,其中2 == g_almpmlaser是打印开关。
总结:为什么用全局变量,数据是怎么传递的
(1)方便调试(打印函数和gdb都可)
(2)保存需要用的数据到全局,一般用结构体赋值,不用的也可以保存
其次我们引入全局变量还可以另外建立打印函数:
上面保存的全