Follow US

Lifestyle

Sports

Gallery

mualaf

Chia sẽ tài liệu lập trình, developer, code, thiết kế website

Latest Post

Technology

About US

Random Posts

Business

Popular Posts

About

Từa lưa

Menu

Cách khai báo mảng 1 chiều trong C/C++

Cách định nghĩa mảng trong lập trình căn bản C/C++
1. Khai báo cấp phát cố định


int a[100];
// khai báo xin cấp phát 1 mảng 1 chiều gồm có 100 phần tử
Nên #define số luợng phần tử truớc để dễ quản lý
#define ARRAY_SIZE 5
int anArray[ARRAY_SIZE];
Đối với cách này đòi hỏi phải "luờng" truơc đuợc số phần sử khi chuơng trình sử dụng.
Hạn chế sử dụng cách này vì sẽ phí bộ nhớ
/* malloc example: random string generator*/
#include <stdio.h> /* printf, scanf, NULL */
#include <stdlib.h> /* malloc, free, rand */

int main ()
{
int i,n;
char * buffer;

printf ("How long do you want the string? ");
scanf ("%d", &i);

buffer = (char*) malloc (i+1);
if (buffer==NULL) exit (1);

for (n=0; n<i; n++)
buffer[n]=rand()%26+'a';
buffer[i]='\0';

printf ("Random string: %s\n",buffer);
free (buffer);

return 0;
}
2. Khai báo cấp phát động
Đối với ngôn ngữ C ta sử dụng toán tử malloc
int *myArray;
myArray = (int*)malloc(n*sizeof(int));
Đỗi với C++ ta sử dụng toán tử new

#define ARRAY_SIZE 5
int *myArray;
myArray = new int[ARRAY_SIZE];
Lưu ý: Đối với dạng sử dụng con trỏ sau khi sử dụng nhớ sử dụng toán tử delete để hủy nó khi không còn sử dụng.

#include <iostream>
#include <new>
using namespace std;

int main ()
{
int i,n;
int * p;
cout << "How many numbers would you like to type? ";
cin >> i;
p= new (nothrow) int[i];
if (p == nullptr)
cout << "Error: memory could not be allocated";
else
{
for (n=0; n<i; n++)
{
cout << "Enter number: ";
cin >> p[n];
}
cout << "You have entered: ";
for (n=0; n<i; n++)
cout << p[n] << ", ";
delete[] p;
}
return 0;
}
Tham khảo thêm ở:

Bài viết liên quan

Nhận xét Bình luận



0 nhận xét "Cách khai báo mảng 1 chiều trong C/C++"


Hỗ trợ - Liên hệ
  • Tư vấn - Robbie Tiến

    Call: 0932169882

    robbietien@gmail.com

    skype Robbie Tiến

  • Kỹ thuật - Robbie Tiến

    Call: 0932.169.882

    robbietien@gmail.com

    skype Robbie Tiến

  • Kỹ Thuật - Robbie Tiến

    Call: 0932.169.882

    robbietien@gmail.com

    skype robbietien

Back To Top