51La
比特币通信协议 - 币圈消息

比特币通信协议篇11、二、TURN简介。在典型的情况下,TURN客户端连接到内网中,并且通过一个或者多个NAT到 详细

请教一个新旧版mt4指标问题,熙版高抬贵手不要挪走

  [复制链接]
517 12
yangsluo 发表于 2018-1-11 16:39:09 | 只看该作者 |阅读模式 打印 上一主题 下一主题
老版mt4(600之前版本)指标代码中出现&&和||是按照什么顺序编译呢?
比如:  条件A  &&  条件B  ||  条件C  &&  条件D   
按C语言说&&的优先级高于||。所以上面应该是 (条件A  &&  条件B ) ||  (条件C  &&  条件D)吗?还是按照从左到右的顺序?
因为最近遇到一个指标里面就出现类似问题了。在老版编译器里 条件A  &&  条件B  ||  条件C  &&  条件D 能正常通过
但是放到新版(600以上版本)就会警告,不是报错是警告
收藏
收藏0
转播
转播
分享
分享
分享
淘帖0

精彩评论12

跳转到指定楼层
沙发
Victor6658 发表于 2018-1-11 17:40:39 | 只看该作者
不懂,请问怎样看MT4的版本呀?
板凳
冷眼观局_笑而不 发表于 2018-1-11 19:00:10 | 只看该作者
应该是同一级的吧  , 实在不行  , 加括号,问题就都解决了  ,括号优先级别是不容质疑的。
地板
 楼主| yangsluo 发表于 2018-1-11 20:20:05 | 只看该作者

同一级应该是从左向右?不过代码好像说不通
5#
zhou138 发表于 2018-1-11 20:51:48 | 只看该作者
括号优先级别是不容质疑的
6#
KSXJM 发表于 2018-1-11 21:56:28 | 只看该作者
&&优先级雨||一样的,应该写成"(条件A  &&  条件B ) ||  (条件C  &&  条件D)"才可以

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
7#
jiuhongzhi 发表于 2018-1-11 22:50:17 | 只看该作者

问题是代码 (A && B) || C && D || E && F && G这种情况应该怎么处理?
8#
 楼主| yangsluo 发表于 2018-1-11 22:57:50 | 只看该作者
(A && B) || C && D || E && F && G
可以这样:(A && B) || (C && D) || ((E && F) && G)

9#
jiuhongzhi 发表于 2018-1-11 23:49:28 | 只看该作者

(A && B) || C && D || E && F && G
可以这样:(A && B) || (C && D) || ((E && F) && G)
刮号优先级最高

优先规则:下面是从上到下的运算优先规则,优先级高的将先被运算。注意:MQL5语言运算优先依据C++优先规则,不同于MQL4语言。运算描述执行顺序()[].函数调用数组元素参考引用结构元素从左到右!~–++--(type)sizeof真假运算符位逻辑运算符(补码)改变运算符增量减量类型转换决定字节大小从右到左*/%乘法除法百分比从左到右+–加法减法从左到右>左移右移从左到右>=小于小于等于大于大于等于从左到右==!=等于不等于从左到右&位逻辑运算符AND从左到右^位逻辑运算符 OR从左到右|位逻辑运算符 OR从左到右&&逻辑AND从左到右||逻辑OR从左到右?:假设运算从右到左=*=/=%=+=-=>=&=^=|=值乘法值除法值百分比值加法值减法值左移值右移值位逻辑运算符AND值位逻辑运算符OR值位逻辑运算符OR值从右到左,逗号从左到右
若要改变运算操作顺序,使用更高一级的圆括号。
10#
jiuhongzhi 发表于 2018-1-12 00:59:26 | 只看该作者
好牛叉啊
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

Powered by 顺水鱼MT4外汇EA网! X3.2© 2001-2017 顺水MT4外汇EA公司.( 陕ICP备17014341号-1

51La