prefix-operator

    -1热度

    1回答

    我想写一个简单的程序来将中缀表示法转换为前缀和后缀。到目前为止,后缀一个完美的作品。但是,我似乎无法获得前缀转换权。我使用了分流码算法。如果我的代码有点不寻常(即编写自己的堆栈类而不是使用#include,不必要地使用其他东西),我必须事先抱歉,我必须满足分配要求(这是一项大学作业)。以下是我试过到目前为止: #include<iostream> #include<string.h> usin

    1热度

    3回答

    为什么以下代码是非法的? using System; class Program { static void Main(string[] args) { int i = 0; --i++; Console.WriteLine(i); } } 它给我的--i++以下错误: The operand of an increment or

    1热度

    2回答

    var a=1; b=++a*a; console.log(b); console.log(a); 结果是4,2如何让程序得到这个结果? 在我看来,结果将是2,2 任何人都可以告诉我javascript编译器如何编译这段代码并得到结果4,2。 那么深层次的问题就是为什么这两段代码的结果是相同的。 var a=2; var b=3; c=(a++)*a; console.log(c)

    0热度

    1回答

    我们正在开发一个自定义List类。我们试图实现迭代器和const_iterator及其函数,但是我们的++运算符有问题。 PostFix完全不起作用,并且当我们步入太远时(当前代码是一个只返回最后有效结果的解决方法),PreFix会给我们分段错误。 问题1:如何修复与前缀相关的段错误而无需返回上一个有效元素? (我们试过返回nullptr)。 即使我们已经按照互联网上的每个指南<,Postfix也

    -4热度

    1回答

    #include<iostream> int fun(int &x,int y=10) { if(x%y==0) return (++x); else return (y--); } int main() { int p=10,q=13; q=fun(p,q); cout<<p<<q<<endl; q=fun(q); cout<<p<<q<<endl;

    0热度

    1回答

    我有一个前缀表示法的布尔表达式。可以说它是or and A B or or C D E。当我将它转换为中缀符号时,我会以 ((A and B) or ((C or D) or E))结束。我想把它缩小到(A and B) or C or D or E。我应该减少中缀表示还是实际上从前缀表示法中减去等式更容易?我应该使用什么算法?

    0热度

    1回答

    我需要为运算符+ - * /创建一个逆波兰表示法的CFG,然后写出正确的派生并创建一个抽象语法树。 我明白如何创建派生和语法树,但我真的不明白如何创建一个给定一组规则的CFG。 我在网上做了很多研究,我只能找出如何使用CFG,但不知道如何创建一个给定的规则。 如果有人能指引我正确的方向或解释一个不同的例子,这将是非常棒的。谢谢!

    -3热度

    1回答

    我有一个函数将中缀表达式转换为前缀表达式。这里是我的代码: string infixToPrefix(string expression) { stack<char> S; //holds operators stack<char>output; //display like in class string prefix = ""; char ch;

    0热度

    2回答

    ++i; 与 i++; 是否使用前缀增量或使用后缀递增的使在给定的两个语句(一个差异点是没有其他操作,参与在那里,除了增加变量)?

    3热度

    3回答

    我有一个简单的Java表达式,如下所示。基于Operator Precedence table,我预计这种表达式将零异常返回师(因为定位后增量运算符的优先级最高)和预期结果表达式将如下所示: 2 + 2 + 5/0 但结果是7,为什么呢? (通过实验的点点我发现,所有的运营商都因为某些原因指定的值为1,但这并不意义,我的情况下,优先级表是正确的) int intCountOperator =