我需要一家公司提出的筛选问题(在C中)的帮助。
问题是找出以下代码的问题。
short test() {
short a,b,c;
b=10;
c = a + b;
return c;
}
此外,如果将签名更改为短测试(短a)并从堆栈中删除a,该怎么办?
我似乎无法找到此代码的任何问题,除了垃圾值可以存储在'a'中,因为它未初始化。对于第二个问题,如果'a'作为参数传递给函数,它真正有什么不同?有人可以帮我这个吗?
答案 0 :(得分:1)
a
的值是不确定的,因为它未初始化。读取a
会导致未定义的行为。如果将a
传递给函数并且它也未初始化,则会更快地发生同样的问题。