若 C 程序的表达式中引用了未赋初值的变量,则( )。
A. 编译时一定会报告错误信息,该程序不能运行
B. 可以通过编译并运行,但运行时一定会报告异常
C. 可以通过编译,但链接时一定会报告错误信息而不能运行
D. 可以通过编译并运行,但运行结果不一定是期望的结果
D