c# - FOR循环初始化中的多个语句
问题描述
我需要同时在 for 循环开始时声明i
和重新初始化j
。然而,
int j;
for (int i = 0, j = 0; true;) { // Do sth }
说:不能在此范围内声明名为“j”的本地或参数,因为该名称在封闭的本地范围中用于定义本地参数。
int j;
for (j = 0, int i = 0; true;) { // Do sth }
说:无效的表达式术语“int”
有没有办法做到这一点?任何知识都值得赞赏。
注意 1:我知道要j = 0
在声明之前放上,这不是我想要的。
注2:以下所有作品。
int i, j;
for (i = 0, j = 0; true;) { // Do sth }
.
for (int i = 0, int j = 0; true;) { // Do sth }
.
int i;
for (Foo(), i = 0; true;) { // Do sth }
解决方案
您的问题是,这一行(如果在 for 循环之外使用):int i = 0, j = 0;
与int i = 0; int j = 0
. 但是,您仍然可以这样做:
int j;
for (int i = j = 0; true;) { // Do sth }
推荐阅读
- python - 如何按级别 0 分组并在多索引和级别数据框(熊猫)中进行描述?
- spring-boot - 升级到 Spring Boot 2.1.0.RELEASE 后 Spring Data Rest 链接不正确
- r - R:用数字替换两个数字之间的值
- vectorization - Nim 中的 R 样式逻辑向量运算
- react-native - 垂直居中标签栏图标 - React Native
- python - 迁移 django 模型时出现“事务处于活动状态”错误
- php - $_SERVER['HTTP_REFERER'] 在 IE 上不起作用
- python - Python matplotlib savefig:更改字体大小
- mongodb - MongoDB聚合:每小时平均销售额
- postman - 我们可以在使用 POSTMAN 时添加 TLS 1.2 版吗?