C语言与javascript的不同之处

博主因将C语言小程序、小算法移植到JavaScript,记录了两种语言的不同。数据类型上,C语言有多种,JS较少;除法计算方式有别;C语言单引号参数到JS成字符串;取反方面,C语言无真正布尔类型,JS处理后为bool类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C语言与javascript的不同之处

介绍

最近会把一些C语言的小程序,小算法移植到js中,这里简单记录一下两种语言的不同之处。

数据类型

C语言中有int,char,float等等,而js中只有let(先忽略var),所以转换过程中遇到C语言中的数据类型要换成let

除法

C语言中常用一种除法整除取整比如int a = 5/2;结果就是2。而在js中这样计算默认会变成2.5,要达到C语言的写法要改成let a = parseInt(5/2)
除法取余和C语言一样直接使用%就可以了。

单引号

C语言中的单引号'A'还是数类型的参数,到js中就是字符串了,这里要注意。因为js中的单引号和双引号是一样的效果。

取反

C语言中并没有真正的布尔类型,一般是用0作为假,非0作为真,在if判断时会和数字类型混用,比如:

int hasHouse = 0;
if (!hasHouse) {
  doMakeMoney();
  hasHouse = !hasHouse;
}

如果js也这样写的话,

int hasHouse = 0;
if (!hasHouse) {
  doMakeMoney();
  hasHouse = !hasHouse;
}

最后hasHouse会变成true或者false这样的bool类型,而不像C语言只会在0和1之间变化。js处理这种情况最后把只用作bool的,在js中改成bool类型

int hasHouse = false;
if (!hasHouse) {
  doMakeMoney();
  hasHouse = !hasHouse;
}

目前遇到这些,遇到新的再更新…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

袁保康

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值