我是靠谱客的博主 完美外套,最近开发中收集的这篇文章主要介绍C++之循环体内变量,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

今天做PAT题目时候看人家解答:

 1 #include <cstdio>
 2 #include <set>
 3 using namespace std;
 4 int main() {
 5     int y, n;
 6     scanf("%d%d", &y, &n);
 7     for (int i = y; i <= 3012; i++) {
 8         set<int> s; //每次循环,s都是在同一个地址
 9     //    printf("%pn", &s);
10         int num = i;
11     //    printf("%pn", &num);
12         for (int j = 0; j < 4; j++) {
13             s.insert(num % 10);
14             num /= 10;
15         }
16         if (s.size() == n) {
17             printf("%d %04d", i - y, i);
18             break;
19         }
20     }
21     return 0;
22 }

突然想到第8行和第10行兴义的变量是否每次都不一样,惨后输出它们的地址试试发现都是一样的,也就是说,逻辑上其实在每一次的循环中它们都应该是不一样的,因为是“新定义”的嘛。然而,如果真的就不一样了,倘若循环次数很大的话,那岂不是内存告急~想想真是自己太傻

转载于:https://www.cnblogs.com/fallenmoon/p/7106038.html

最后

以上就是完美外套为你收集整理的C++之循环体内变量的全部内容,希望文章能够帮你解决C++之循环体内变量所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部