Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2011, 17:24   #11
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

сейчас прошелся по коду, максимум они используют третий индекс 0 или 1, без запятых:

Код:
 s->current_picture.motion_val[dir][xy + 1][1] = motion_y;
т.е. пример с запятой есть только в комментарии, в коде он не встречается. Вероятно, пережиток прошлого.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 01.06.2011, 17:28   #12
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2veniside
мож запятую они использовали в качестве перечисления, что можно так и так) ну я говорю, в коде это не имеет смысла, ибо так устроен оператор запятая

Цитата:
motion_val[direction][x + y*mv_stride][0->mv_x, 1->mv_y];\
хотя тож странно, как они к константе обратились как по указателю) или имеют ввиду, если передать 0, это будет указывать на mv_x, 1 - на mv_y
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 01.06.2011, 17:32   #13
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

> как они к константе обратились как по указателю)

упс, слона-то я и не приметил.

> если передать 0, это будет указывать на mv_x, 1 - на mv_y

100 пудов. вот только способ описания этого они избрали странный.
Настолько странный, что он даже как-то работает )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 02.06.2011, 01:44   #14
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2_-Re@l-_
что тут удивительного то?

2veniside
добрался я до кода, решил расписать.
я не стал сырцы смотреть, и так все понятно, накидал, как они используют это
Код:
    int i;
    int (*arr[2])[2]; //наша структура

    arr[0] = (int (*)[2]) malloc(5 * sizeof(int [2])); // первый указатель будет указывать на первый массив из 2-х интов, кол - во массивов = 5

     //первый индекс - первый или второй указатель
     //второй индекс - конкретный массив из 2-х интов (таких массивов у нас 5)
     //третий индекс - первый или второй инт
     //соответсвенно, первый и третий индекс принимают только 0 и 1, второй столько, сколько массивов создали в памяти (ну -1 есессна, ибо смещение с нуля)

    arr[0][0][0] = 1;
    arr[0][1][0] = 2;
    arr[0][2][0] = 3;
    arr[0][3][0] = 4;
    arr[0][4][0] = 5;

    for (i = 0; i < 5; i++)
        printf("%d\n", arr[0][i][0]);

    free(arr[0]);
в общем, код то не сложный) главное понимать сишную семантику указателей и массивов, все таки родственные понятия. чтобы себя проверить, специально явные приведения сделал + прогнал валгриндом все чотко
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 02.06.2011, 02:39   #15
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

минут 10 зависал над вопросом 2*2=5? , потом дошло, что число 5 выбрано произвольно )

спасибо за труд, теперь я знаю, как сказать это на паскале )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 02.06.2011, 02:58   #16
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2veniside
конечно произвольно)
да не за что) для себя повторил принципы работы с указателями
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление(добавление) поля из(в) структуры kilgoreq Помощь студентам 0 22.02.2011 00:59
Объявления KemanSR Visual C++ 11 29.01.2011 22:54
Объявления событий Aleksey1989 Помощь студентам 11 04.11.2010 11:14
Краткий смысл. В чем цель и смысл вашей жизни? grenles Свободное общение 20 13.09.2010 07:13
почему не правильно заполняет поля структуры ... ??? MichaelRED Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 09.06.2010 17:49