Форум программистов, компьютерный форум CyberForum.ru

Массив указателей. Найти отличие между двумя конструкциями - C++

Восстановить пароль Регистрация
 
qwerty12341
0 / 0 / 0
Регистрация: 23.03.2014
Сообщений: 2
23.03.2014, 12:31     Массив указателей. Найти отличие между двумя конструкциями #1
Привет! Возник вопрос
в чем разница между
C++
1
char* arr[]
и
C++
1
char arr[][]
не одно и тоже ли это? почему например когда я пишется
C++
1
2
char* Arr[]={"laborer", "secretary", "manager", "accountant" ,
        "executive", "researcher"};
мы пишем
C++
1
char* Arr[]
а не например
C++
1
char arr[][]
Хотя с
C++
1
char arr[][]
выводит ошибку.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11825 / 6804 / 769
Регистрация: 27.09.2012
Сообщений: 16,871
Записей в блоге: 2
Завершенные тесты: 1
23.03.2014, 12:44     Массив указателей. Найти отличие между двумя конструкциями #2
C++
1
char arr[][]
двумерный массив, так то ( только размерность нужно указать )
C++
1
char* arr[]
массив указателей
qwerty12341
0 / 0 / 0
Регистрация: 23.03.2014
Сообщений: 2
23.03.2014, 14:42  [ТС]     Массив указателей. Найти отличие между двумя конструкциями #3
Croessmah, А почему ненужно указывать размер в
C++
1
char* arr[]
а
C++
1
char arr[][]
нужно?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11825 / 6804 / 769
Регистрация: 27.09.2012
Сообщений: 16,871
Записей в блоге: 2
Завершенные тесты: 1
23.03.2014, 17:39     Массив указателей. Найти отличие между двумя конструкциями #4
Цитата Сообщение от qwerty12341 Посмотреть сообщение
А почему ненужно указывать размер в
из стандарта:
When several “array of” specifications are adjacent, a multidimensional array is created; only the first of the constant expressions that specify the bounds of the arrays may be omitted. In addition to declarations in which an incomplete object type is allowed, an array bound may be omitted in some cases in the declaration of a function parameter (8.3.5). An array bound may also be omitted when the declarator is followed by an initializer (8.5). In this case the bound is calculated from the number of initial elements (say, N) supplied (8.5.1), and the type of the identifier of D is “array of N T.” Furthermore, if there is a preceding declaration of the entity in the same scope in which the bound was specified, an omitted array bound is taken to be the
same as in that earlier declaration, and similarly for the definition of a static data member of a class.
 Комментарий модератора 
Неплохо бы перевести. Начинающие программисты, как правило,
даже сообщения об ошибках не могут перевести с английского.


Добавлено через 2 часа 37 минут

Не по теме:

Цитата Сообщение от Croessmah Посмотреть сообщение
Начинающие программисты, как правило,
даже сообщения об ошибках не могут перевести с английского.
ну это уже не мои проблемы, при том же придется немного подучить английский, так что пусть начинают. В крайнем случае переводчик гугл переведет не совсем внятно, но достаточно понятно

Yandex
Объявления
23.03.2014, 17:39     Массив указателей. Найти отличие между двумя конструкциями
Ответ Создать тему
Опции темы

Текущее время: 16:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru