我有d1="11"和d2="07" 。 我想将d1和d2转换为整数并执行d1-d2 。 我如何在UNIX中执行此操作?
d1 - d2目前为我返回"11-07" 。
标准解决方案:
expr $d1 - $d2
你也可以这样做:
echo $(( d1 - d2 ))
但要注意,这将把07作为一个八进制数字! (所以07和7 ,但是010和10 )。
其中的任何一个都可以在shell命令行下运行。 bc可能是你最直接的解决方案。
使用bc :
$ echo "$d1 - $d2" | bc
使用awk :
$ echo $d1 $d2 | awk '{print $1 - $2}'
使用perl :
$ perl -E "say $d1 - $d2"
使用Python :
$ python -c "print $d1 - $d2"
所有的回报
4
let d=d1-d2;echo $d;
这应该有所帮助。
用这个:
#include <stdlib.h> #include <string.h> int main() { const char *d1 = "11"; int d1int = atoi(d1); printf("d1 = %d\n", d1); return 0; }
等等