相关疑难解决方法(0)

为什么C和C ++允许表达式(int)+ 4 * 5?

(int) + 4*5;
Run Code Online (Sandbox Code Playgroud)

为什么这样做(添加带有值的类型)是可能的?(尝试使用g ++和gcc。)

我知道这没有任何意义(也没有影响),但是我想知道为什么这是可能的。

c c++ casting language-lawyer

83
推荐指数
2
解决办法
8196
查看次数

C中一元'+'运算符的目的是什么?

在C中,写下这样的内容是合法的:

int foo = +4;
Run Code Online (Sandbox Code Playgroud)

然而,据我所知道的,一元++4是一个空操作.是吗?

c

74
推荐指数
7
解决办法
2万
查看次数

编译器在这里做了什么:int a = b*(c*d*+ e)?

我的程序中有一个奇怪的错误,经过几个小时的调试后,我发现了以下非常愚蠢的行:

int a = b * (c * d *  + e)
Run Code Online (Sandbox Code Playgroud)

如果你没有看到它:在de我之间写的* +,只是一个+意图.

为什么这会编译,它实际上意味着什么?

c++ arithmetic-expressions

72
推荐指数
5
解决办法
7760
查看次数

Python中+(pos)一元运算符的用途是什么?

一般来说,一元+人在Python中应该怎么做?

我问,因为到目前为止,我从未见过这样的情况:

+obj != obj
Run Code Online (Sandbox Code Playgroud)

obj通用对象在哪里实现__pos__().

所以我想知道:为什么+__pos__()存在?你能提供一个真实世界的例子,其中上面的表达式评估为True

python

54
推荐指数
6
解决办法
1万
查看次数

为什么"你好"+ +'/'+"世界"=="hello47world"?

对于这个C#a==true,:

bool a = "hello" +   '/' + "world" == "hello/world";
Run Code Online (Sandbox Code Playgroud)

对于这个C#b==true,:

bool b = "hello" + + '/' + "world" == "hello47world";
Run Code Online (Sandbox Code Playgroud)

我想知道这是怎么回事,更重要的是,为什么C#语言架构师会选择这种行为?

.net c# visual-studio

49
推荐指数
3
解决办法
2965
查看次数

Java的一元加运算符的目的是什么?

Java的一元加运算符似乎来自C,通过C++.

int result = +1;   
Run Code Online (Sandbox Code Playgroud)

它似乎有以下影响:

  • 如果它是包装器对象,则将其操作数取消装箱
  • int如果它不是已经int或更宽,则提升其操作数
  • 稍微复杂化包含大量连续加号的邪恶表达式的解析

在我看来,有更好/更清晰的方法来做所有这些事情.

这个SO问题中,关于C#中的对应运算符,有人说"如果你觉得有必要,它就会超载".

但是,在Java中,不能超载任何运算符.那么这个一元加运算符是否只存在于Java中,因为它存在于C++中?

java unary-operator language-history

36
推荐指数
3
解决办法
7020
查看次数

无论'entry'关键字发生了什么?

前几天在我的白皮书中巡航时,我在C关键字列表中注意到了. entry是该列表中的关键字之一.

它留作将来使用.回想一下我的Fortran时代,有一种类型的函数使用entry语句来创建第二个参数签名,或者进入函数的入口点.

这是最初打算用于什么条目?或者完全不同的东西?

关于entry关键字的故事是什么?

c language-design

35
推荐指数
3
解决办法
6041
查看次数

为什么F#有一元加运算符?

有些语言使用一元加运算符进行隐式转换,例如将字符串强制转换为数字(例如Javascript)或将小数字类型转换为int(例如大多数基于C的语言),或者在重载运算符时使用.

由于一元加号主要用于这样的hackish目的,而且由于F#不执行自动扩展转换,我很惊讶F#包括一元加号.

令我惊讶的是,Haskell没有一元加运算符.由于F#设计受到Haskell的影响,我很好奇为什么当Haskell显然不支持F#需要一元加时.

你能举例说明F#中一元加的可靠用法吗?如果你不能,为什么它包含在语言中呢?

f# unary-operator

12
推荐指数
1
解决办法
1151
查看次数

为什么var m = 6 + + + + + + + + + 6; 在c#中有效吗?

标题是大多数问题,是什么允许这是有效的代码?是否有任何好处或技巧可以让我利用它?

c#

10
推荐指数
1
解决办法
444
查看次数

uplus功能有用吗?

这是关于MATLAB中uplus函数或其相应的运算符,一元加上的修辞问题.+

是否存在此运算符有用的情况?更好的是,是否有必要使用此操作员?

matlab

9
推荐指数
2
解决办法
1182
查看次数