首页 > 编程语言 >C# 变量作用域

C# 变量作用域

时间:2024-08-18 15:51:52浏览次数:12  
标签:变量 作用域 sum 局部变量 C# int 循环

1局部变量

在方法、循环、条件语句等代码块内声明的变量是局部变量,它们只在声明它们的代码块中可见。

方法//函数下面的定义对于类属于局部变量

实例

//错误使用变量作用域

for (int i = 0; i < n; i++)
{
    int sum = 0;   //现在的sum是局部变量
    sum += i;
    Console.WriteLine(sum);
}
//每次循环都会定义一个sum=0
//每次循环都会打印一个sum


//正确使用变量作用域

    int sum = 0;  //现在的sum是全部变量
for (int i = 0; i < n; i++)
{    
    sum += i;    
}
Console.WriteLine(sum);
//循环结束后才打印sum

2全局变量

在类的成员级别定义的变量是成员变量,它们在整个类中可见,如果在命名空间级别定义,那么它们在整个命名空间中可见。

类下面的定义对方法属于全局变量

实例

public partial class Practices
{
    int sum = 0;  //sum对于for循环里面的sum属于全局变量
    public void Ex17()
        {
            int n = Convert.ToInt32(Console.ReadLine());
            

            //错误的for循环
            for (int i = 0; i < n; i++)
            {
                int sum1 = 0;   //这里的sum1属于局部变量
                sum1 += i;
                Console.WriteLine(sum1);
            }

            //这里的sum2对于下面的for循环属于全局变量,对于Ex17方法属于局部变量
            int sum2 = 0; 

             //正确的for循环
            for (int i = 0; i <= n; i++)
            {
                sum2 += i;
            }
            Console.WriteLine(sum);


}

3循环变量作用域

在 for 循环中声明的循环变量在循环体内可见

实例

for (int i = 0; i < 5; i++)
{
    // i 在循环体内可见
}
// i 在这里不可见

标签:变量,作用域,sum,局部变量,C#,int,循环
From: https://blog.csdn.net/weixin_44293732/article/details/141285485

相关文章

  • 025、Vue3+TypeScript基础,使用组合式API时组件的生命周期
    1、App.vue代码如下:<template><divclass="app"><h2>App.Vue</h2><Personv-if="isShow"/><button@click="isShow=!isShow">点我切换</button></div></template>&l......
  • MIRec论文阅读笔记
    MIRec:NeuralNewsRecommendationwithMulti-InterestandPopularity-AwareModeling论文阅读笔记Abstract现存的问题:​ 现有方法主要是为每个用户学习一个统一的嵌入向量来代表其兴趣。然而,由于缺乏表现力,单一的嵌入表示法无法充分表达用户的不同兴趣。此外,将新闻流行度纳......
  • Teamcenter根据子项ID查询父项的查询配置
    1.选择【ItemRevision】,设置查询的规则:2.点击【提示】3.可以参照说明,一步步配置,也可以直接点击【在树中查找】 4.添加ID到查询条件中5.执行查看结果: ......
  • [LeetCode] 1367. Linked List in Binary Tree 二叉树中的链表
    Givenabinarytree root anda linkedlistwith head asthefirstnode.ReturnTrueifalltheelementsinthelinkedliststartingfromthe head correspondtosome downwardpath connectedinthebinarytree otherwisereturnFalse.Inthiscontext......
  • 超越Perplexity的AI搜索引擎框架MindSearch
    超越Perplexity的AI搜索引擎框架MindSearch介绍MindSearch是InternLM团队的一个开源的AI搜索引擎框架,由中科大和上海人工智能实验室联合打造的,具有与Perplexity.aiPro相同的性能。框架特性:......
  • Vue技术栈-Vue 3 项目组件入门:单文件组件 (SFC)
    目录前言1.简介2.安装Vite和Vue33.什么是.vue文件?vue文件解析4.什么是VUE的组件?5.工程化vue项目如何组织这些组件?6.Vue3关于样式(CSS)的导入方式7.结语前言        本篇是在上一篇Vue技术栈-Vite最新版创建一个Vue3项目的基础上的后续,先对Vite......
  • Aspose.Total for .NET 24.5 Crack
    FileFormatSDKs:::Morethan80%ofFortune100companiestrustAsposeSDKstoCreate,Edit,ExportandConvertover100fileformatsintheirapplications. Aspose.Total:::::ProductFamilyAspose.WordsProductSolutionAspose.PDFProductSolutionAspos......
  • flink + iceberg 快速搭建指南
    flink+iceberg快速搭建theenvironmentincludes:minioicebergflinkCentos更换tencent的yum源备份系统旧配置文件mv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backup获取对应版本的CentOS-Base.repo到/etc/yum.repos.d/目录各版......
  • C语言目录操作(2024.8.12)
    用递归删除目录(多个目录可以从参数传进来)#include<stdio.h>#include<sys/types.h>#include<dirent.h>#include<unistd.h>#include<string.h>#include<stdlib.h>/*从目录中读到的所谓目录项,是一个这样的结构体:structdirent{ ino_td_ino;//文件索引号 of......
  • C语言 之 strlen、strcpy、strcat、strcmp字符串函数的使用和模拟实现
    文章目录strlen的使用和模拟实现函数的原型strlen模拟实现:方法1方法2方法3strcpy的使用和模拟实现函数的原型strcpy的模拟实现:strcat的使用和模拟实现函数的原型strcat的模拟实现:strcmp的使用和模拟实现函数的原型strcmp的模拟实现本章的内容主要讲解这4个与字符......