C# 为什么提示y为未赋值的局部变量 而变量x却没有出现此类提示

问题描述

C# 为什么提示y为未赋值的局部变量 而变量x却没有出现此类提示

解决方案

x用在for循环了,可以的, 循环内部使用循环外部的变量,要初始化,y=0

解决方案二:

你把Y赋值 了,会又提标你x未赋值

解决方案三:

int x, y, z;
z = 0;
for (x = 1; x < 20; x++)
{
for (y = 1; y < 30; y++)
{
z = 100 - x - y;
if (y == 10)
goto end;
}
end: Console.WriteLine("{0}{1}{2}", x, y, z);
Console.Read();
}
这样写可以的呢

解决方案四:

编辑器可以知道 z 做了初始化、x 是最外层的循环变量必定有赋值,但是并不确定是否可以进入到内层循环去给y赋值。
所以认为y存在未赋值的可能就会报错。

解决方案五:

因为x是最外层循环,肯定会做到的;但是y是内层循环,有可能外层循环一次都没有做,那样的话y就没有赋过值,因此编译器就直接告诉你y没有赋值了

解决方案六:

X在最外层循环 无论如何都会起码被赋值一次
但是当最外层循环不满足条件后 可能y层循环一次都不执行 这样就会导致y不能被赋值
根据你代码的意思,你可以在"z=0;"后加上"x=1;y=1;"
这样就不会有这个问题了

解决方案七:

楼主直接在声明变量x,y,z的时候初始化一下就行了,int x=0,y=0,z=0;

解决方案八:

是不是提示y有可能未被赋值啊

解决方案九:

  1. * 1. 额学习

解决方案十:

x 的输出是在 x循环中 ,所以一直都有值
但是y是在另外一个循环中 他不会去改变你外面的值

时间: 2016-09-19
Tags: 变量, 赋值

C# 为什么提示y为未赋值的局部变量 而变量x却没有出现此类提示的相关文章

利用try-catch判断变量是已声明未声明还是未赋值

这篇文章主要介绍了利用try-catch判断变量是已声明未赋值还是未声明,需要的朋友可以参考下 目的是如果一个变量是已声明未赋值,就可以直接赋值:并且不能改变变量的作用域    如果未声明的话,就重新声明,    在网上搜了下,常见的方法是if(typeof(a)=='undefined'){var a='ss';},    但是这种方法对未声明或已声明未赋值的变量都会返回true.而且如果是这样:   代码如下: var a;  function f(){  if(typeof(a)=='un

利用try-catch判断变量是已声明未声明还是未赋值_javascript技巧

目的是如果一个变量是已声明未赋值,就可以直接赋值:并且不能改变变量的作用域 如果未声明的话,就重新声明, 在网上搜了下,常见的方法是if(typeof(a)=='undefined'){var a='ss';}, 但是这种方法对未声明或已声明未赋值的变量都会返回true.而且如果是这样: 复制代码 代码如下: var a; function f(){ if(typeof(a)=='undefined') {var a=1;} } f(); console.log(a); 会显示undefined

vb与s7 300通讯-VB与西门子s7-300通讯,提示w95_s7.dll未找到

问题描述 VB与西门子s7-300通讯,提示w95_s7.dll未找到 Option Explicit Public Declare Function load_tool Lib "w95_s7.dll" (ByVal nr As Byte, ByVal dev As String, adr As PlcAdrType) As Long Public Declare Function db_read Lib "w95_s7.dll" (ByVal blockno A

Win7开机提示长时间未登录记住密码已过期怎么办

  Win7电脑开机提示长时间未登录记住密码已过期的解决方法. 方法如下: 1.点击开始按钮,选择控制面板,将查看方式修改为大图标,点击"管理工具"; 2.在打开的管理工具页面中点击"本地安全策略"; 3.展开至"安全设置>帐户策略>密码策略",在右侧双击打开"密码最长使用期限"; 4.输入密码过期时间,点击应用并确定即可.

可恶的ie8提示缺少id未定义

在页面中循环添加到select中,但是在ie8中就一直提示 缺少id未定义,经测试发现数组的最后多了个逗号,把逗号去掉就好了 最近一直用javascript编程,用到了json,写了个数组[{'id':'key_01','name':'高校'},{'id':'key_02','name':'直送卡'},{'id':'key_03','name':'新生'},{'id':'key_04','name':'换机'},{'id':'key_05','name':'动感地带套卡'},{'id':'key

可恶的ie8提示缺少id未定义_javascript技巧

最近一直用javascript编程,用到了json,写了个数组[{'id':'key_01','name':'高校'},{'id':'key_02','name':'直送卡'},{'id':'key_03','name':'新生'},{'id':'key_04','name':'换机'},{'id':'key_05','name':'动感地带套卡'},{'id':'key_06','name':'库存'},{'id':'key_07','name':'飞信'},{'id':'key_08','n

vb vb与s7 300通讯-VB与西门子s7-300通讯,提示w95_s7.dll未找到

问题描述 VB与西门子s7-300通讯,提示w95_s7.dll未找到 我想使用VB与西门子s7-300通讯,使用了w95_s7.dll动态链接库.其代码如下: 在公共模块里: Option Explicit Public Declare Function load_tool Lib "w95_s7.dll" (ByVal nr As Byte, ByVal dev As String, adr As PlcAdrType) As Long Public Declare Functio

服务器-未赋值的session在jsp报错,求大神帮帮忙吧

问题描述 未赋值的session在jsp报错,求大神帮帮忙吧 想要在页面打开是判定一个session会话,这个session要等到跳转到服务器之后才能赋值. 但是明明我设定了判断是否为空,可是还是报错. 这是我的页面和服务器代码: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//

我为什么不能把从数据库读出来的字符串赋值给String的变量String str=rs.getString(&amp;amp;quot;name&amp;amp;quot;);

问题描述 我为什么不能把从数据库读出来的字符串赋值给String的变量Stringstr=rs.getString("name"):总是出错.但是能直接输出System.out.println(rs.getString("name"))急啊我在线等哪位帮我解决一下33XXXXXX! 解决方案 解决方案二:错误提示Exceptioninthread"main"java.sql.SQLException:afterendofresultset....