发布网友 发布时间:2022-02-28 09:44
共2个回答
热心网友 时间:2022-02-28 11:14
弱类型语言指的是一种没有很强类型概念的语言,如vb,而强类型语言指的是有很强类型概念的语言,如c(虽然c允许类型转换,但是相对来讲比vb要是强类型),弱类型的好处在于程序员不需要过多的着重与类型的转换,而强类型的好处在于程序可以有条不紊的执行,而且类型错误的出现率很低,即使有也很容易发现。热心网友 时间:2022-02-28 12:32
计算机能执行的是机器语言,为了方便编程,设计了和计算机机器语言一一对应的汇编语言(低级语言,但执行效率高,编程相对麻烦),除了上述语言外其他都叫做高级语言。例如c语言在编译的时候就是把一条c语句编译成对应的多条机器语言(或者说是多条汇编代码),因而是典型的高级语言
但c语言比起其他语言来说对数据类型的处理更灵活,换句话来说就是数据类型检测没有像basic等其他高级语言强,这样的目的是可以更接近计算机硬件,需要编程者更清晰的理解数据在内存中的分布情况,代码的运行效率也会更高。最明显的特征是数组的边界不检测,这样就说明它是 弱 类型的高级语言,反之对数据类型进行严格检测的如basic就是强类型
个人理解,仅作参考,望采纳!
追答上面的第二条把概念搞错了:应该是c语言比basic等高级语言的数据类型要求严格,c语言是强类型高级语言!c语言的数组越界检测没basic严格,这是语法检测问题,是为了灵活性和运行效率,不是强弱类型的区分点!举个例子如果我们在c语言中定义一个数值变量a我们需要明确a是具体什么类型,比如是有符号整型还是无符号整型,是浮点单精度还是双精度,因为不同类型在内存中的存储大小和意义是不同的,而有的高级语言,你定义a可以给它以正数,负数,整数或小数都可以,它是会自动帮你识别的!所以c是强类型,强类型执行效率高,难学楼下的解释正确!不好意思,差点误人子弟了