Hỏi về khai báo mảng 1 chiều

mình mới học c++ thắc mắc chỗ khai báo mảng có kích thước là hằng số liệu có đúng không. bạn mình chạy dev c++ vẫn được còn mình dùng VS.xin được chỉ giáo

#include <iostream>
using namespace std;

int main()
{
	int N, array_1d[N];
	N < 100;
	cout << "nhap N: " << endl;
	cin >> N;
	for (int i = 0; i < N; i++)
	{
		cout << "phan tu cua mang array_1d[" << i << "] ";
		cin >> array_1d[i];
	}
	cout << endl;
	cout << "thanh phan cua mang theo TT dao nguoc la: ";
	for (int i = N - 1; i >= 0; i--)
	{
		cout << array_1d[i] << "  ";
	}
	cout << endl;
}

Cái hằng số mà bạn nói nó là N đấy à ?
Nếu vậy nó có phải hằng số đâu ?

Hằng số là những cái được khai báo bằng define hoặc ở dạng const.

#define N 10
const int N = 10;

Thì mới khai báo kiểu

int array[N];

Còn lại phải khai báo kiểu con trỏ hoặc dùng malloc.

4 Likes
  • Khai báo N (chưa gán giá trị => toàn rác).
  • Khai báo mảng theo N (ôm rác về nhà).
  • Nhập (gán giá trị) cho N. Vô nghĩa!
2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?