30/09/2018, 20:22

hỏi về khai báo biến int cơ bản

#include <stdio.h>
#include <stdlib.h>

int main()
{
    //printf("Hello world!
");
    int i;
    for (i = 0; i < 4; i++)
        int j;
        for (j = 0; j < 5; j++)
        printf("gia tri cua i: %d gia tri cua j: %d
", i, j);
        //if (j==4)
           // printf("da het gia tri j = %d
", j);
    return 0;
}

mọi người chỉ giúp em là tại sao lại báo lỗi ở dòng ‘int j;’ nhỉ? nếu đem nó lên dưới 'int i;" thì chạy dc.

Pham Van Hai viết 22:39 ngày 30/09/2018

Bạn nên tham khảo thêm các chuẩn C (hiện tại có C89/90 - C99 - C11, …). Mỗi chuẩn sẽ có sự khác nhau một chút.

Quay trở lại trường hợp của bạn compiler của bạn mặc định dùng chuẩn C89/90 --> chuẩn này không cho phép khai báo biến ở bất ký chỗ nào, mà các biến phải được khai báo đầu tiên trước tất cả các lệnh khác -> int j của bạn phải được khải báo trước các lệnh for.

Bài liên quan
0