Массивы и указатели в C++ — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
(Новая страница: «=== Работа с массивами через указатели === <source lang="cpp">void write_array(int *a, int sz) { for(int *p = a; p != a + sz; ++p) …»)
 
м (Добавлен пробел после * в параметрах функции read_array)
 
(не показаны 4 промежуточные версии этого же участника)
Строка 1: Строка 1:
 
=== Работа с массивами через указатели ===
 
=== Работа с массивами через указатели ===
<source lang="cpp">void write_array(int *a, int sz) {
+
<source lang="cpp">// Печать массива
 +
void write_array(int * a, int sz) { // вспомните, что "int a[]" ~ "int * a" в параметрах функции
 
     for(int *p = a; p != a + sz; ++p) {
 
     for(int *p = a; p != a + sz; ++p) {
 
         cout << *p << " ";  // p последовательно указывает на все элементы массива
 
         cout << *p << " ";  // p последовательно указывает на все элементы массива
Строка 7: Строка 8:
 
}
 
}
  
void read_array(int *a, int sz) {
+
// Ввод массива с клавиатуры
 +
void read_array(int * a, int sz) {
 
     for(int *p = a; p != a + sz; ++p) {
 
     for(int *p = a; p != a + sz; ++p) {
 
         cin >> *p;
 
         cin >> *p;

Текущая версия на 22:03, 8 октября 2014

Работа с массивами через указатели

// Печать массива
void write_array(int * a, int sz) { // вспомните, что "int a[]" ~ "int * a" в параметрах функции
    for(int *p = a; p != a + sz; ++p) {
        cout << *p << " ";  // p последовательно указывает на все элементы массива
    }
    cout << endl;
}

// Ввод массива с клавиатуры
void read_array(int * a, int sz) {
    for(int *p = a; p != a + sz; ++p) {
        cin >> *p;
    }
}