c语言变量作用域问题

#include <stdio.h>
int main(void)
{
    int i = 0;
    int c = 0;
    int j, m;
    for (i; i < 3; i++) {
        for (c; c < 4; c++) {
            printf("i = %d; ", i);
        }
        printf("\n");
        // printf("i = %d; ", i);
    }
    printf("------------------------------------------------------------------------\n");
    for (j = 0; j < 3; j++) {
        for (m = 0; m < 4; m++) {
            printf("j = %d; ", j);
        }
        printf("\n");
        // printf("i = %d; ", i);
    }
    return 0;
}

Laravel
为什么i在内层循环只能输入0,而不是0,1,2?
而j就会输出0,1,2?在for循环内初始化和循环外初始化有什么不同?求解答感谢,刚接触c。

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 3

巧了,刚刚自学到这里,好像变量的声明定义是有区别的。

//....
for (i=0; i < 3; i++) {
    for (c=0; c < 4; c++) {
//....

//结果:
i = 0; i = 0; i = 0; i = 0; 
i = 1; i = 1; i = 1; i = 1; 
i = 2; i = 2; i = 2; i = 2; 
------------------------------------------------------------------------
j = 0; j = 0; j = 0; j = 0; 
j = 1; j = 1; j = 1; j = 1; 
j = 2; j = 2; j = 2; j = 2; 

file

3年前 评论
xiaoweiwei (楼主) 3年前

怎么都在学c,还有发错分类了

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!