01/10/2018, 00:47

Lỗi trong code block?

Em viết hàm nhập mảng mà k biết sao nó bào lỗi là: " ‘for’ loop inital declarations are only allowed in C99 or C11mode…" là sao ạ?

#include <stdio.h>
void nhapmang(int a[],int n);
void main()
{
int n,a[100];
printf(“Nhap so luong phan tu mang: “);
scanf(”%d”,&n);
}
void nhapmang(int a[],int n)
{
for(int i=0;i<n;i++)
{
printf(“Nhap phan thu thu: %d”,i);
scanf("%d",&a[i]);
}
}

Pham Van Hai viết 02:55 ngày 01/10/2018

Diễn đàn có chức năng search đó bạn

@thinh94pc Đang dùng chương trình gì để compile? Nếu là Code::Blocks thì thêm -std=c99 vào cho compiler nó biết phải dùng chuẩn C99. Tham khảo câu trả lời của @drgnz Hướng dẫn cách thêm -std=c99 trong Code::Blocks Vào Settings chọn Compiler [image] Chọn Other options rồi thêm -std=c99 vào như hình [image]
viết 02:51 ngày 01/10/2018

C11 và C99 cho phép khai báo trong for luôn bạn nhé
Ví dụ:
for (int i = 0; i < n; i++)
nhưng trong C89 (ANSI C) thì phải khai báo biến i trước rồi mới dùng trong for.
int i; for (i = 0; i < n; i++)

Bài liên quan
0