Câu hỏi lý thuyết khó về ngôn ngữ C

Em sắp thi mà trong đề cương có 2 câu hỏi này thực sự khó , không biết trả lời như thế nào cho chuẩn, mong mọi người nếu đọc được topic có thể giúp em với ạ

  1. Bản chất quá trình chuyển điều khiển giữa chương trình chính và chương trình con. Tại sao trong chương trình sử dụng nhiều chương trình con lại làm tăng thời gian thực hiện.
  2. Giải thích cách tính miền giá trị của các kiểu dữ liệu. Trong C một mảng có tối đa bao nhiêu phần tử.

This post was flagged by the community and is temporarily hidden.

2 Likes

cảm ơn anh đã quan tâm và trả lời giúp em ạ

Bạn google Thread and context-switch nhé.

1 Like

2 câu này liên quan đến kiến trúc máy tính.
Câu số 2:

  • Miền giá trị của kiểu phụ thuộc vào số bit mà hệ thống máy qui định cho từng kiểu. ví dụ:
    Kiểu int là 4 byte, 32 bit, có thể lưu được từ -2^31,…,0,…2^31-1. Nghĩa là max âm là -2^31 và max dương là 2^31-1.
    Là 2 ^ (số bit) giá trị.

  • Số phần tử tối đa của mảng phụ thuộc vào vùng nhớ Stack và Heap.
    Nếu trong lúc dạy thầy giảng cơ bản, thì số phần tử tối đa của mảng là chỉ số phần tử khi mảng được khai báo (mảng tĩnh).
    Còn nếu thầy giảng về Heap và Stack, ngoài việc số phần tử tối đa phụ thuộc chỉ số phần tử khi khai báo mảng (nếu là mảng tĩnh), thì số phần tử của mảng tĩnh phụ thuộc vào vùng nhớ Stack, còn số phần tử của mảng động phụ thuộc vùng nhớ Heap.

Tham khảo thêm: Vùng nhớ Stack trong C?

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?