//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
//---string a=NULL;
string b="";
if(a==b)
Print("Пустая строка и NULL - одно и то же");
elsePrint("Пустая строка не равна NULL");
}
//+--
像array[][]这样的二维数组就不能用?
理论上他们应该这样做,我甚至试着...我无法做到这一点。如果原则上可以的话,我希望看到一个完整的实现。立即出现了很多麻烦事...如果我们谈论的是一个二维数组,首先让我困惑的是,缓冲区最初是未定义的,也就是动态的。它们怎么能被装入父数组呢?然后...如果每个缓冲区在填充时都有自己独立的长度,我们最终会得到一个立方体数组而不是二维数组,但它甚至不是一个立方体,而是某种三维俄罗斯方块。
你能告诉我如何查出交易的结束时间吗?
我在交易属性中找不到它。
你能告诉我如何查出交易的结束时间吗?
我在交易属性中找不到它。
交易(订单)没有关闭时间,因为它在MT4中是这样的。为了确定 "单一交易 "的寿命,就像在MT4中那样,我们必须分析 "开仓"(IN)交易和 "平仓"(OUT/INOUT)交易。
这同样适用于该职位。
参考手册》说,对于PositionGetSymbol()函数,"如果没有找到位置,将返回一个空字符串"。而如果有必要监控空字符串的返回,那么函数的返回值应该与什么相比较:NULL还是""(两个倒逗号)?
你需要使用另一个函数来检查这个位置是否存在。
不,目的不是检查是否有一个位置,而是在循环中返回一个空字符串时使用continue操作符。我在以前的信息中写道:"有必要跟踪空字符串的返回。"那么,要比较什么呢,谁来告诉我们呢?
帮助部分有一个void类型和一个NULL常数。一般来说,你很早就可以检查了。
在帮助中,有一个关于void类型和NULL常数 的章节。
嗯,是的,有一个部分。只是这一节并没有说清楚空字符串是如何表示的。本节中的例子仅使用NULL变量来检测未初始化的字符串。
至于自我检查,这个问题是在编译器爆出这句话之后出现的
如下:"从'数字'到'字符串'的隐性转换",但单独比较指定的字符串值并没有引起编译器的任何异议。这就是为什么我提出了这个问题,而不是被 "投向旧类型 "的近乎理论的推理所激怒,试图简化代码。
从你的例子中可以看出,至少语言开发人员使用不带空格的双引号来表示空字符串。 这正是我想知道的。谢谢你。
嗯,是的,有一个部分。只是这一节并没有确切说明如何识别空字符串。本节中的例子仅使用NULL变量来检测未初始化的字符串。
至于自我测试,在编译器爆出以下这句话后,问题已经出现了
你期望从这个表达中得到什么?
读取布尔运算