Windows CMD如何做算术?注意小数不支持!

基础算术运算

语法格式
set /a 变量名=表达式
示例

:: 加法
set /a result=5+3    &echo 5+3=%result%
:: 减法
set /a result=10-4   &echo 10-4=%result%
:: 乘法(使用*需转义为^*)
set /a result=6*3    &echo 6*3=%result%
:: 除法(结果取整)
set /a result=15/4   &echo 15/4=%result%  :: 输出3(舍去小数)
:: 取模(求余数)
set /a result=17%%5  &echo 17 mod 5=%result%  :: 注意:%需写为%%

复合运算与变量使用

  1. 连续计算

    set /a result=2+3*4      &echo 2+3*4=%result%     :: 输出14(先乘后加)
    set /a result=(2+3)*4    &echo (2+3)*4=%result%   :: 输出20(括号优先级)
  2. 变量参与运算

    set num1=8
    set num2=2
    set /a result=num1*num2  &echo %num1%*%num2%=%result%  :: 输出16
  3. 自增/自减

    set /a count+=1  :: 等价于 count=count+1
    set /a count-=3  :: 等价于 count=count-3

位运算(高级用法)

set /a支持二进制操作:

set /a "result=5 & 3"    :: 与运算(0101 & 0011 = 0001 → 1)
set /a "result=5 | 3"    :: 或运算(0101 | 0011 = 0111 → 7)
set /a "result=5 ^ 3"    :: 异或(0101 ^ 0011 = 0110 → 6)
set /a "result=~5"       :: 取反(-6)
set /a "result=5 << 2"   :: 左移2位(5*4=20)
set /a "result=20 >> 2"  :: 右移2位(20/4=5)

注意事项

  1. 仅限整数
    所有运算结果为整数(除法舍去小数,15/4=3)。
  2. 数值范围
    支持32位有符号整数(-2,147,483,648 到 2,147,483,647),超出会溢出。
  3. 转义字符
    在CMD中需转义为^*(但set /a内可直接用),需写为。
  4. 变量作用域
    计算结果仅在当前CMD会话有效,关闭窗口后消失。

实用技巧

  • 直接输出结果(不保存变量):
    set /a 5+3
  • 十六进制/八进制输入
    set /a result=0xA+2  :: 十六进制A(10)+2=12
    set /a result=012+1  :: 八进制12(10)+1=11

CMD的set /a命令是轻量级整数计算工具,适合简单运算或脚本中的数值处理,对于复杂计算(如小数、函数),建议使用PowerShell、VBScript或Python等更强大的工具。

引用说明参考Microsoft官方文档《Windows Command Line set 命令》,结合实践经验整理。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6041.html

(0)
酷番叔酷番叔
上一篇 2025年7月2日 02:10
下一篇 2025年7月2日 02:26

相关推荐

  • 你的简历为什么总被HR忽略?

    在Linux环境下,C语言可通过多种方式调用系统命令,核心方法包括system()、popen()和exec系列函数,以下是详细实现及安全实践:system() 函数:简单执行命令原理:直接调用系统的shell(如/bin/sh)执行命令,阻塞当前进程直到命令结束,示例:int main() { int sta……

    4天前
    700
  • 如何用30秒判断对方是否在撒谎?

    前提条件安装JDK从Oracle官网下载并安装JDK(推荐JDK 11+),验证安装:命令行输入 javac -version 和 java -version,显示版本号即成功(如 javac 17.0.1),配置环境变量Windows:添加JDK安装路径到系统变量: setx PATH "%PATH……

    2025年7月6日
    1100
  • Windows命令提示符如何测试网站连通性?

    常用网络诊断命令Ping 测试连通性作用:检查与目标网站服务器的网络连接,命令:ping www.example.com结果解读:显示来自…的回复:网络通畅,显示请求超时或无法访问:网络故障或服务器无响应,参数示例:ping -t baidu.com //持续ping(按Ctrl+C停止)ping -n 1……

    3天前
    700
  • 如何在Java中实现命令行输入?

    Java通过标准输入流System.in实现命令行输入交互,支持Scanner或BufferedReader读取用户输入,最佳实践包括异常处理、资源关闭及输入验证,确保程序健壮性。

    2025年7月4日
    1100
  • 如何快速登录四大主流数据库命令行?

    通用前提条件安装数据库客户端:确保系统已安装对应数据库的命令行工具(如MySQL的mysql,PostgreSQL的psql),获取连接信息:主机地址(IP或域名)端口号(默认:MySQL-3306, PostgreSQL-5432, SQL Server-1433, Oracle-1521)用户名和密码数据库……

    2025年7月4日
    1000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信