Программирование - это просто
Advertisement
Главная arrow Уроки программирования arrow Уроки Visual C++ arrow Microsoft visual c++ 2008. Урок 17. Указатель на массив.
26.04.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Microsoft visual c++ 2008. Урок 17. Указатель на массив. Печать E-mail
Автор megabax   
05.04.2012 г.
New Page 1

Microsoft visual c++ 2008. Урок 17. Указатель на массив.

Указатель на массив имеет интересное свойство. Пусть у нас есть массив 

int A[10]. 

Если мы сделаем присвоение

Pa=&A[0]

то переменная Pa будет указывать на адрес первого элемента массива. 

Pa+i будет указывать на i-ый элемент массива, то есть, его можно будет достать через *(Pa+i). Кроме того, к элементу массива мы можем получить доступ и через A+i, а значит и через Pa+i, так как Pa  у нас указывает на первый (точнее, нулевой) элемент массива. 

Продемонстрируем все это на примере:

#include "stdafx.h"

#include <stdio.h>

#include <stdlib.h>  //for atoi

#include <conio.h>

#define eof -1   //Ctrl+Z

#define maxline 10

 

// ввод строки с клавиатуры

int getline(char s[], int lim) {

    int c,i;

    for(i=0; i<lim-1 && (c=getchar())!=eof && c!='\n'; i++) s[i]=c;

    s[i]='\0';

    i++;

    return i;

}

 

 

 

int _tmain(int argc, _TCHAR* argv[])

{

    int A[maxline]={0,1,3,5,8,9,12,14,18,21};

    int *Pa=&A[0];   //указатель на массив

    char s[maxline];

    int c;

    do {

        printf("enter the item's number <0-9> ");

        getline(s,maxline);

        int i=atoi(s);

        printf("i=%d A[i]=%d *(Pa+i)=%d *(A+i)=%d %d\n",i,A[i],*(Pa+i),*(A+i),Pa[i]);

    } while ((c=getchar()!=eof));

    printf("Press any key to continue");

    _getch();  

    return 0;

}

А вот протокол работы данной программы:

Microsoft visual c++ 2008. Урок 17. Указатель на массив.


Скриншоты, помеченные знаком *, являются цитатами и иллюстрациями   программного продукта "Microsoft Visual C++ Express Edition", авторское право на который принадлежит корпорации Microsoft.. 


 

Последнее обновление ( 16.11.2013 г. )
 
« След.   Пред. »
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги