Информатика. Общая информатика. Основы языка C++. Мамонова Т.Е. - 143 стр.

UptoLike

Составители: 

cout<<«\nB=?»;cin>>b;
int l=0,r=n-1,s;
do
{
s=(l+r)/2;//средний элемент
if(a[s]<b)l=s+1;//перенести левую границу
else r=s;//перенести правую границу
}while(l!=r);
if(a[l]==b)return l;
else return -1;
4.6.2. Указатели
Понятие указателя
Указатели специальные объекты в программах на C++, предна-
значенные для хранения адресов памяти.
Когда компилятор обрабатывает оператор определения перемен-
ной, например, int i=10; то в памяти выделяется участок памяти в соот-
ветствии с типом переменной (int=> 4байта) и записывает в этот участок
указанное значение. Все обращения к этой переменной компилятор за-
менит на адрес области памяти, в которой хранится эта переменная.
Программист может определить собственные переменные для хра-
нения адресов областей памяти. Такие переменные называются указате-
лями. Указатель не является самостоятельным типом, он всегда связан
с каким-то другим типом.
Указатели делятся на две категории:
1) указатели на объекты,
2) указатели на функции.
Рассмотрим указатели на объекты, которые хранят адрес области
памяти, содержащей данные определенного типа.
В простейшем случае объявление указателя имеет вид:
тип *имя;
Тип может быть любым, кроме ссылки.
Пример 47
int *i;
double *f, *ff;
char *c;
Размер указателя зависит от модели памяти. Можно определить
указатель на указатель: int**a;
143