matlab如何换行:代码行末尾加三个点实现脚本内换行
写MATLAB代码的时候总嫌一行代码太长,屏幕横向放不下,一直搞不懂matlab如何换行,最开始瞎试了一堆快捷键,白白浪费了半个多小时。
最开始直接按回车键换行,以为和日常打字、写其他代码一样,回车就能直接拆分代码语句。结果运行代码直接报错,命令行窗口弹出红色报错字符,直接提示表达式不完整,程序直接中断跑不下去。当时第一反应是软件卡顿了,关掉脚本重新打开,依旧是一模一样的报错,盯着编辑器界面发呆,完全摸不清问题出在哪。
随便在网上抄了别人一段拆分过长代码的片段,粘贴进自己脚本,才发现区别藏在不起眼的符号上。
三个英文状态下的省略号...,就是MATLAB原生支持的代码换行符号。
不要切换中文输入法,中文的省略号完全没用,系统识别不出来,依旧会判定代码语法错误。只要在一行代码需要断开的位置,末尾打上三个点,直接回车换行,前后两段代码就会被软件识别为同一行完整语句,运行过程不会出现任何报错。
之前一直习惯性把换行符打在运算符前面,比如加法、乘除符号之前拆分代码,偶尔还是会出现莫名的运行异常。折腾好久才搞明白,换行的三个点必须放在运算符之后,不能拆开运算符号,这是很容易忽略的小细节。
还有一种场景很多人都会混淆,命令行窗口手动输入单行代码,和脚本文件里批量写代码,换行规则完全不一样。
命令行窗口里面临时敲代码,哪怕加了三个省略号,换行之后依旧会立刻执行前段代码,没办法拼接完整语句。反正命令行本身就是单行即时运行模式,本来就不适合拆分长代码,没必要强行在这里做换行操作。
脚本和实时脚本才是需要频繁换行的主战场,日常写矩阵运算、长公式、多参数函数调用,代码动辄几十上百个字符,横向拖动滚动条查看内容特别麻烦。用上三点换行之后,代码排版瞬间变整洁,阅读和后续修改都省心很多。
之前还傻傻试过空格换行、分号强行截断代码,要么报错闪退,要么代码逻辑直接错乱,算出的数据完全不符合预期。其实根本不用花时间试各种冷门方法,MATLAB从头到尾就只认三点续行符这一种原生换行方式。
还有一个容易踩的小误区,三个省略号后面不要额外加空格、不要加分号,打完三个点直接回车就行。多余的符号附着在续行符后面,部分旧版本MATLAB还是会出现兼容报错,新版本虽然容错率高,但没必要多此一举留下隐患。
昨天整理往期仿真代码,批量修改过长语句格式,全程只用这一种换行方法,几十段长代码一次性全部运行成功,没有出现一次语法报错。
晚上关机之前,回看白天写错的那些无效换行代码,才发觉一开始根本没必要凭空猜测快捷键。老老实实记住三点续行符,就能解决所有代码换行的需求。