在C++中,这段代码可以工作:
char c='a';
int r=2;
c+=r;
这将会和 c='c'
做同样的事情。如何在c#中做到相同的效果?
在将它添加到 c
之前,只需将其转换为 char
char c='a';
int r=2;
c += (char) r;
c
的初始值不是 y
或 z
,然后它就会递增到垃圾字符。 - Nikhil Agrawalchar c = 'a' + (char)2;
会导致编译错误? - Andychar c = (char)('a' + 2);
来实现。 - juergen d'a' + 2
实际上是 (int)'a' + 2
,因此您需要将其强制转换回来。如果我没记错的话,这是 C++ 向后兼容性的一个问题,但是关于这个问题有很多讨论:https://dev59.com/n3NA5IYBdhLWcg3wfN6O - Rob Church