|
Указатели
1. Как правильно определить переменную, которая хранит указатель на переменную целого типа?
· int *a;
o int &a;
o *int a;
o int a*;
2. Как правильно инициализировать переменную «b», чтобы в ней хранился адрес переменной «a»?
· int *b=&a;
o int b=&a;
o int &b=a;
o int &b=*a;
3. Как правильно записать по адресу, хранящемуся в переменной «a», число «1»?
o &a=1;
o a=1;
· *a=1;
o a=*1;
o a*=1;
4. Как правильно записать в переменную «a» значение, которое храниться по адресу, указанному в переменной «b»?
o a=b;
· a=*b;
o *a=b;
o a=&b;
o &a=b;
5. Что произойдет, если к указателю прибавить единицу?
o над указателями нельзя выполнять арифметических действий
o к адресу, записанному в указателе, будет прибавлена единица
· к адресу, записанному в указателе, будет прибавлена число, равное размеру типа указателя
o к переменной, на которую указывает указатель, будет прибавлена единица
6. Как правильно записать действие на указателем «p», чтобы он указывал на следующую переменную типа int (4 байта) в памяти?
· p=p+1;
o p=p+4;
o p=p+int;
o над указателем нельзя выполнять таких действий без дополнительных преобразований типов
7. Как правильно записать действие над указателем «p» на переменную типа int (4 байта), чтобы он указывал на следующий байт в памяти?
o p=p+1;
o p=p+4;
o p=p+int;
· над указателем нельзя выполнять таких действий без дополнительных преобразований типов
8. Какие действия будут корректными после следующих объявлений
int *a;
int b[5];
· 100%a=b;
o -100%b=a;
o -100%a=*b;
o -100%b=&a;
o -100%a=&b;
9. Какие действия будут корректными после следующих объявлений
int *a;
int b[5];
int c;
· 50%с=a[1];
· 50%b[1]=c;
o -50%a=b[1];
o -50%a=c;
o -50%b=&c;
10. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=c;
a=*b;
· 0
o 1
o 2
o случайному значению
o будет ошибка при компиляции
o будет ошибка при выполнении
11. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=c;
a=b;
o 0
o 1
o 2
o случайному значению
· будет ошибка при компиляции
o будет ошибка при выполнении
12. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=&c[1];
a=b[1];
o 0
o 1
· 2
o случайному значению
o будет ошибка при компиляции
o будет ошибка при выполнении
13. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=&c[2];
a=b[2];
o 0
o 1
o 2
· случайному значению
o будет ошибка при компиляции
o будет ошибка при выполнении
14. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=c;
b++;
a=*b;
o 0
· 1
o 2
o случайному значению
o будет ошибка при компиляции
o будет ошибка при выполнении
15. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=*c;
a=*b;
o 0
o 1
o 2
o случайному значению
· будет ошибка при компиляции
o будет ошибка при выполнении
16. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=&c[0];
a=b[2];
o 0
o 1
· 2
o случайному значению
o будет ошибка при компиляции
o будет ошибка при выполнении
17. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=&c;
a=*b[2];
o 0
o 1
o 2
o случайному значению
· будет ошибка при компиляции
o будет ошибка при выполнении
18. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=c;
a=*b++;
· 0
o 1
o 2
o случайному значению
o будет ошибка при компиляции
o будет ошибка при выполнении
19. Чему будет равно значение переменной «a» после следующих действий
int a;
int *b;
int c[]={0,1,2};
b=c++;
a=*b;
o 0
o 1
o 2
o случайному значению
· будет ошибка при компиляции
o будет ошибка при выполнении
20. Что делает операция «a[ ]»?
· индексирует массив, прибавляя к указателю a смещение, необходимое для обращение к нужному элементу
o выдает адрес объекта
o выдает объект, на который указывает указатель
o это недопустимая операция
21. Что делает операция «&a»?
o индексирует массив, прибавляя к указателю a смещение, необходимое для обращение к нужному элементу
· выдает адрес объекта
o выдает объект, на который указывает указатель
o это недопустимая операция
22. Что делает операция «*a»?
o индексирует массив, прибавляя к указателю a смещение, необходимое для обращение к нужному элементу
o выдает адрес объекта
· выдает объект, на который указывает указатель
o это недопустимая операция
23. Что делает операция «a*»?
o индексирует массив, прибавляя к указателю a смещение, необходимое для обращение к нужному элементу
o выдает адрес объекта
o выдает объект, на который указывает указатель
· это недопустимая операция
24. Какая операция индексирует массив, прибавляя к указателю a смещение, необходимое для обращение к нужному элементу?
· «a[]»
o «&a»
o «*a»
o «a*»
25. Какая операция выдает адрес объекта?
o «a[]»
· «&a»
o «*a»
o «a*»
26. Какая операция выдает объект, на который указывает указатель?
o «a[]»
o «&a»
· «*a»
o «a*»
27. Какая операция является не корректной?
o «a[]»
o «&a»
o «*a»
· «a*»
28. Как правильно обратиться к полю «x» структуры «a»?
· a.x
o a->x
o x.a
o x->a
29. Как правильно обратиться к полю «x» структуры, на которую указывает указатель «a»?
o a.x
· a->x
o x.a
o x->a
30. Запишите оператор разыменования
· *
31. Запишите оператор взятия адреса
· &
32. Запишите оператор, с помощью которого можно обратиться к полю структуры, на которую имеется указатель
· ->
Дата добавления: 2015-08-29; просмотров: 24 | Нарушение авторских прав
<== предыдущая лекция | | | следующая лекция ==> |
Чтение и запись в текстовые файлы | | | o 0 |