Составители:
Рубрика:
1.2. Массивы и указатели 13
p=65520, *p=100, &p=65518
p=65522, *p=200, &p=65518
p=65524, *p=300, &p=65516
p=65526, *p=0 , &p=65516
На рисунке 1.4 изображен массив a (значения элементов и их ад-
реса).
Рис. 1.4
Теперь вычислим сумму элементов массива, состоящего из n эле-
ментов, с помощью указателя x. Заметим, что работа с динамически-
ми (состоящими из переменного числа элементов) массивами в языках
С и C++ не допускается. Для работы с переменным числом элемен-
тов надо использовать указатели и операцию динамического (во время
выполнения программы) выделения памяти new. Существует библио-
тека STL (Standard Template Library), в которой реализован класс
vector<>, позволяющий работать с переменным числом элементов.
Далее будет показано, что в языке C++ можно вводить новые типы
данных и операции.
#include <stdio.h>
int main()
{
int *x,n,s;
scanf ("%d", &n);
s=0;
x=new int[n];
for(int i=0; i<n; i++)
{
scanf("%d", x+i);
s=s+ *(x+i);
}
printf("s=%d", s);
1.2. Массивы и указатели 13 p=65520, *p=100, &p=65518 p=65522, *p=200, &p=65518 p=65524, *p=300, &p=65516 p=65526, *p=0 , &p=65516 На рисунке 1.4 изображен массив a (значения элементов и их ад- реса). Рис. 1.4 Теперь вычислим сумму элементов массива, состоящего из n эле- ментов, с помощью указателя x. Заметим, что работа с динамически- ми (состоящими из переменного числа элементов) массивами в языках С и C++ не допускается. Для работы с переменным числом элемен- тов надо использовать указатели и операцию динамического (во время выполнения программы) выделения памяти new. Существует библио- тека STL (Standard Template Library), в которой реализован класс vector<>, позволяющий работать с переменным числом элементов. Далее будет показано, что в языке C++ можно вводить новые типы данных и операции. #includeint main() { int *x,n,s; scanf ("%d", &n); s=0; x=new int[n]; for(int i=0; i
Страницы
- « первая
- ‹ предыдущая
- …
- 11
- 12
- 13
- 14
- 15
- …
- следующая ›
- последняя »