What is the size of memory accessed using int * in pointer operations?
4 phương ánCó giải thích
Các phương án trả lời
Chọn một phương ánLời giảiChọn phương án để mở
Đáp án đúng: "4 bytes". Kiểu của con trỏ quyết định trình dịch đọc ghi bao nhiêu byte khi lấy giá trị qua dấu sao, và bước nhảy khi cộng trừ con trỏ. Trên các trình dịch phổ thông ngày nay, kiểu int chiếm bốn byte, nên *p làm việc trên bốn byte và p + 1 nhảy bốn byte. Số "1 bytes" là kích thước của char, kiểu duy nhất mà chuẩn ấn định bằng một byte. Số "2 bytes" là kích thước thường thấy của short, và cũng là kích thước int trên những trình dịch mười sáu bit rất cũ. Số "8 bytes" là kích thước của double hay long long, và cũng là chỗ chứa chính biến con trỏ trên nền sáu mươi tư bit, nhưng câu hỏi hỏi vùng nhớ được truy cập qua con trỏ chứ không hỏi chỗ chứa con trỏ.
Cùng phần 5
What will be the output of the following C code?
#include <stdio.h>
void main()
{
int *ptr, a = 10;
ptr = &a;
*ptr += 1;
printf("%d,%d\n", *ptr, a);
}Có lời giảiCâu hỏi(Choose 1 answer)
What is the output of this C code?
#include <stdio.h>
#include <conio.h>
int main() {
int n = 267, *pn = &n;
char* pc = pn;
*pc = 0;
printf("n = %d", n);
return 0;
}Có lời giảiCâu hỏiWhat will be the output of the C program?
int arr[5] = { 2, 3, 5, 4, 7 };
int *ptr = (&arr + 1);
printf("%d %d\n", *(arr + 1), *(ptr - 1));Có lời giảiCâu hỏiCả 41 câu của chủ đề41 câu
Xuất hiện trong 1 bộ đề
Đi tiếp từ đây