我总是记不住电话号码。我需要一个记忆规则。


当前回答

如果你觉得以10为进制很难记住这个值,试试以2为进制: 1111111111111111111111111111111

其他回答

有趣的是,Int32。MaxValue拥有超过2,147,486,647个字符。

但话说回来,我们有代码完成,

所以我想我们真正需要记住的是Int3<period>M<enter>,这在visual studio中只有6个字符。

更新 出于某种原因,我被否决了。我能想到的唯一原因是他们没有理解我的第一句话。

“Int32。MaxValue最多需要14个字符来输入。 2147,486,647需要输入10或13个字符,这取决于是否使用逗号。

不要把它看成一个大数字,试着把它分解,然后寻找相关的想法。例如:

斯诺克的最大击球次数为2次(最大击球次数为147次) 4年(48个月) 3年(36个月) 4年(48个月)

上述适用于最大的负数;正的是- 1。

也许上面的分类对你来说不会再令人难忘了(它并不令人兴奋!),但希望你能想出一些令人难忘的主意!

首先写出两次47(你喜欢47号特工,对吧?),保持如图所示的空格(每个破折号是一个数字的槽位。先2个,然后4个)

--47----47

认为你手里有12个(因为12 =一打)。将其乘以4,47号特工号的第一位数字,即47,并将结果放在你已经拥有的第一对的右边

12 * 4 = 48
--4748--47 <-- after placing 48 to the right of first 47

然后将12乘以3(为了得到47号特工的数字的第二个数字,即7,你需要7 - 4 = 3),并将结果放在前两对的右边,即最后一个对槽

12 * 3 = 36
--47483647 <-- after placing 36 to the right of first two pairs

最后,从最右边的数字(本例中为2)开始,一个接一个地从您的手中拖动数字,并将它们放在您获得的第一个空槽中

2-47483647 <-- after placing 2
2147483647 <-- after placing 1

你知道了!对于负极限,你可以认为它的绝对值比正极限大1。

练习几次,你就会掌握窍门的!

最好的记忆规则是: 21(神奇的数字!) 47(记住) 48(顺序!) 36(21 + 15,都是魔法!) 47又

记住5对数字也比记住10对数字容易。

最简单的方法是查看std::numeric_limits< int >::max()

例如(来自MSDN),

// numeric_limits_max.cpp

#include <iostream>
#include <limits>

using namespace std;

int main() {
   cout << "The maximum value for type float is:  "
        << numeric_limits<float>::max( )
        << endl;
   cout << "The maximum value for type double is:  "
        << numeric_limits<double>::max( )
        << endl;
   cout << "The maximum value for type int is:  "
        << numeric_limits<int>::max( )
        << endl;
   cout << "The maximum value for type short int is:  "
        << numeric_limits<short int>::max( )
        << endl;
}