Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не понимаю азов си 
:(
    Опции темы
Надежда
  Дата 18.11.2005, 16:05 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Помогите разобраться в чужом листинге.

1. Какие значения будут переданы функции f в вызове f((z=1,z+2))?
2. Чтотакое ? int a особое обьявление??
3.Можно ли массиву int C[7][2] сделать С[4]=C[5]?
4. Какое смысловое значение имеет '\n'+'\n'?
5. Что такое F().g() и с чем это едят?
6. Что означает выражение int (*f)()=x и для какой функции будет коректно выражение f()=0;


Жду вашей помощи!
  Вверх
Neitron
Дата 18.11.2005, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 3.10.2005
Где: Москва

Репутация: 2
Всего: 5



Цитата
1. Какие значения будут переданы функции f в вызове f((z=1,z+2))?

Аналогично по-видимому что это f(1,3);
Цитата
2. Чтотакое ? int a  особое обьявление??

Это не особое объявление, и вообще не объявление. Это определение.
Цитата
3.Можно ли массиву int C[7][2] сделать С[4]=C[5]?

Нет, точнее можно все, но желаемого результата (приравнять строки?) не получится.
Цитата
4. Какое смысловое значение имеет '\n'+'\n'?

Смысловое значение этого - сложение двух чисел. Число зависит от того какой код имеет сиивол в кавычках. В данном случае результат выполнения этой операции будет 20.
Цитата
5. Что такое F().g()  и с чем это едят?

Ф-ция F возрвщает объект или указатель на него, в которой имеется ф-ция g()
Цитата
6. Что означает выражение int (*f)()=x и для какой функции будет коректно выражение f()=0;

Это выражение означает определения указателя на ф-цию возвращающаю int с последующей инициализайцией ф-цией x
Ф-ция f и x будут указывать на один и тот же участок памяти.


--------------------
Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей.
Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ
PM MAIL   Вверх
S.A.P.
Дата 18.11.2005, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: 9
Всего: 71



Цитата(Neitron @ 18.11.2005, 16:19)
Аналогично по-видимому что это f(1,3);
запятая в скобках - это операция следования. На самом деле это плохой код, по идее должно быть 3, но не факт.

Цитата
и для какой функции будет коректно выражение f()=0;
если не ошибаюсь, то для виртуальной.

Добавлено @ 16:40
Цитата
2. Чтотакое ? int a особое обьявление??

не совсем понял.

Это сообщение отредактировал(а) Perchilla - 18.11.2005, 16:58
PM MAIL   Вверх
maxim1000
Дата 18.11.2005, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 17
Всего: 110



Цитата
f()=0;

в коде: для той, которая возвращает ссылку, например, на int...
ну и при объявлении виртуальной, но про это уже сказали...
Добавлено @ 17:57
Цитата
запятая в скобках - это операция следования. На самом деле это плохой код, по идее должно быть 3, но не факт.

особо не уверен, но, ИМХО, зесь неопределенное поведение
никто не гарантирует последовательность вычисления аргументов функции
а оператором следования это было бы, если бы функция принимала только один аргумент... и то в этом случае нужно было бы писать доп. скобки: f((something,something2))


--------------------
qqq
PM WWW   Вверх
S.A.P.
Дата 18.11.2005, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: 9
Всего: 71



Цитата(maxim1000 @ 18.11.2005, 17:54)
а оператором следования это было бы, если бы функция принимала только один аргумент... и то в этом случае нужно было бы писать доп. скобки: f((something,something2))
так там и написаны дополнительные скобки smile .

Добавлено @ 18:07
Правда я не совсем уверен, что там неопределенное поведение, наверное все таки для операции следования порядок строго определен... Или нет?
PM MAIL   Вверх
Neitron
Дата 18.11.2005, 18:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 3.10.2005
Где: Москва

Репутация: 2
Всего: 5



Ой))) А я и не заметил скобки=)))))


--------------------
Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей.
Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ
PM MAIL   Вверх
chipset
Дата 18.11.2005, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: 27
Всего: 165



Пожалуйста, впредь каждый вопрос помещайте в отдельную тему.


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
maxim1000
Дата 18.11.2005, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 17
Всего: 110



Цитата
так там и написаны дополнительные скобки

да... чего-то пропустил smile
тогда, насколько я понимаю, порядок вычислений фиксирован...


--------------------
qqq
PM WWW   Вверх
AISIN
Дата 18.11.2005, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 27.1.2005
Где: Пушкино

Репутация: нет
Всего: 1



Цитата(Perchilla @ 18.11.2005, 16:39)
если не ошибаюсь, то для виртуальной.
Точнее для чисто виртуальной функции. Если чисто виртуальную функцию объявить то для дкласса нельзя создавать объекты.

Добавлено @ 18:34
int сокращенно от integer
--------------------
Внимание!!! Внимание!!!Запущена программа по завоеванию мира!!!Выполненно 0,000000000000000000000000000000000000000000000000000002%
PM MAIL   Вверх
DeadSoul
Дата 18.11.2005, 23:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1217
Регистрация: 25.9.2005
Где: Москва

Репутация: 2
Всего: 11



Цитата
1. Какие значения будут переданы функции f в вызове f((z=1,z+2))?

Зависит от компилятора(и версии). В общем случае это неопределенное поведение
Цитата
3.Можно ли массиву int C[7][2] сделать С[4]=C[5]?

Нельзя. C[4] имеет тип int* const



--------------------
 Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". 

Бьем спамеров их же оружием. Пусть весь спам сыпется им
[email protected] 
PM   Вверх
Guest
Дата 19.11.2005, 00:01 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата

Цитата 
5. Что такое F().g()  и с чем это едят?

Ф-ция F возрвщает объект или указатель на него, в которой имеется ф-ция g()



Ф-ция F() возрвщает объект в котором имеется ф-ция g() , но НЕ указатель на объект, если бы был указатель на объект, то было бы F()->g()
  Вверх
sergejzr
Дата 19.11.2005, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 19
Всего: 360



Модератор: Название темы должно отражать ее суть!


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0542 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.