单项选择题

某程序设计语言规定在源程序中的数据都必须具有类型,然而,()并不是做出此规定的理由。

A.为数据合理分配存储单元
B.可以定义和使用动态数据结构
C.可以规定数据对象的取值范围及能够进行的运算
D.对参与表达式求值的数据对象可以进行合法性检查