|
|
 |
Ответов
|
Jan 30 2007, 00:46
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата Была задача, передать массив в функцию, как аргумент - передали То что вы засунули внутрь функции void fun(array_as_param param).. , массивом назвать нельзя... Проверить легко (обращение внутри функции): param[0] = 0; даст ошибку, а это значит, что не массив был передан в функцию.
|
|
|
|
|
Jan 30 2007, 01:15
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Цитата(defunct @ Jan 30 2007, 04:46)  Цитата Была задача, передать массив в функцию, как аргумент - передали То что вы засунули внутрь функции void fun(array_as_param param).. , массивом назвать нельзя... Проверить легко (обращение внутри функции): param[0] = 0; даст ошибку, а это значит, что не массив был передан в функцию. Это ровным счетом ничего не значит, потому что я могу сделать приведение к нужному мне типу. В конце концов, программу пишу я, и только я точно знаю что у меня внутри функции, а что с наружи. И если мне вздумалось передать массив как аргумент, то я из кожи вылезу но сделаю это
--------------------
|
|
|
|
|
Jan 30 2007, 11:42
|

Дух погибшего транзистора
   
Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288

|
Цитата(prottoss @ Jan 30 2007, 01:15)  И если мне вздумалось передать массив как аргумент, то я из кожи вылезу но сделаю это  Придется сильно попотеть  для того чтобы сделать так, как в используемом языке невозможно сделать. ЗЫ Прямо какое-то обострение у контингента началось, везде дон кихоты от С с красными дипломами.
--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
|
|
|
|
|
Jan 30 2007, 12:15
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Цитата(SpiritDance @ Jan 30 2007, 15:42)  Цитата(prottoss @ Jan 30 2007, 01:15)  И если мне вздумалось передать массив как аргумент, то я из кожи вылезу но сделаю это  Придется сильно попотеть  для того чтобы сделать так, как в используемом языке невозможно сделать. А потеть и не надо. Попробую еще раз объяснить. Есть определенный мною тип данных: Код typedef struct{
UCHAR array[128];
} int128 /* к примеру */ Есть переменные, но они не приведены к данному типу: Код UCHAR a[128];
UCHAR b[128]; И есть функция, и не важно, что у нее внутри: Код void math128(int128 arg1, int128 arg2); Я легко передаю в функцию два массива, приведя их к типу int128: Код
.....
math128(*(int128 *)&a), *(int128 *)&b));
..... Что я передал в функцию??? Два массива - a и b Цитата(SpiritDance @ Jan 30 2007, 15:42)  ЗЫ Прямо какое-то обострение у контингента началось, везде дон кихоты от С с красными дипломами. Не надо флудить и злорадно хихикать  Если у Вас есть что сказать по теме, говорите, если нет - тихо наблюдайте
--------------------
|
|
|
|
|
Jan 30 2007, 14:40
|

Дух погибшего транзистора
   
Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288

|
Цитата(prottoss @ Jan 30 2007, 12:15)  Не надо флудить и злорадно хихикать  Если у Вас есть что сказать по теме, говорите, если нет - тихо наблюдайте Вот что точно не надо так это говорить другим что им делать. А теперь по теме. Рискну ответиь за dxp. В С всегда можно предать пременную по значению, что вы и продемонстрировали. Но вы никогда не заставите компилятор предать в функцию массив пременных.
--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
|
|
|
|
|
Jan 30 2007, 14:47
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Цитата(SpiritDance @ Jan 30 2007, 18:40)  Цитата(prottoss @ Jan 30 2007, 12:15)  Не надо флудить и злорадно хихикать  Если у Вас есть что сказать по теме, говорите, если нет - тихо наблюдайте Вот что точно не надо так это говорить другим что им делать. А теперь по теме. Рискну ответиь за dxp. В С всегда можно предать пременную по значению, что вы и продемонстрировали. Но вы никогда не заставите компилятор предать в функцию массив пременных. А я уже заставил - два раза показывал. Объявил массив array1 и передал его в качестве параметра функции fun. И не надо мне говорить - правильно это или не правильно и как я это сделал. Примите просто как факт - ЭТО СДЕЛАННО.
--------------------
|
|
|
|
Сообщений в этой теме
Abakt в чем прелесть указателей ? Jan 29 2007, 05:03 arttab Попробуйте почитать и подумать...
А из примеров:
в... Jan 29 2007, 05:34 mihask Цитата(Abakt @ Jan 29 2007, 08:03) Растол... Jan 29 2007, 06:48 beer_warrior В сущности без указателя не обойтись при использов... Jan 29 2007, 08:49 mihask Ну да еще структуру целиком нельзя передать в кач... Jan 29 2007, 09:19  dxp Цитата(mihask @ Jan 29 2007, 12:19) Ну да... Jan 29 2007, 11:20   prottoss Цитата(dxp @ Jan 29 2007, 15:20) Цитата(m... Jan 29 2007, 11:38    dxp Цитата(prottoss @ Jan 29 2007, 14:38) Цит... Jan 29 2007, 12:57     prottoss Цитата(dxp @ Jan 29 2007, 16:57) Покажите... Jan 29 2007, 13:13      dxp Цитата(prottoss @ Jan 29 2007, 16:13) Цит... Jan 29 2007, 15:36       prottoss Цитата(dxp @ Jan 29 2007, 19:36) Цитата(p... Jan 29 2007, 16:02        dxp Цитата(dxp @ Jan 29 2007, 19:36) Здесь пе... Jan 29 2007, 18:13     prottoss Цитата(dxp @ Jan 29 2007, 16:57) Покажите... Jan 29 2007, 20:22      zltigo Цитата(prottoss @ Jan 29 2007, 19:22) мас... Jan 29 2007, 23:20       prottoss Цитата(zltigo @ Jan 30 2007, 03:20) Цитат... Jan 29 2007, 23:51      dxp Цитата(prottoss @ Jan 29 2007, 23:22) Цит... Jan 30 2007, 08:09       prottoss Цитата(dxp @ Jan 30 2007, 12:09) Цитата(p... Jan 30 2007, 11:50        dxp Цитата(prottoss @ Jan 30 2007, 14:50) Цит... Jan 30 2007, 12:51         prottoss Цитата(dxp @ Jan 30 2007, 16:51) Цитата(p... Jan 30 2007, 13:03          dxp Цитата(prottoss @ Jan 30 2007, 16:03) Цит... Jan 30 2007, 16:15           prottoss Цитата(dxp @ Jan 30 2007, 20:15) Послушай... Jan 30 2007, 16:43     prottoss Цитата(dxp @ Jan 29 2007, 16:57) Цитата(p... Jan 30 2007, 14:28   mihask Цитата(dxp @ Jan 29 2007, 14:20) Цитата(m... Jan 29 2007, 11:45 prottoss Цитата(Abakt @ Jan 29 2007, 09:03) Растол... Jan 29 2007, 09:50 mihask Цитата(Abakt @ Jan 29 2007, 08:03) Растол... Jan 29 2007, 10:07 Abakt друзья, огромное спасибо. пошел тренироваться на ... Jan 29 2007, 10:39 unichorn Цитата(prottoss @ Jan 29 2007, 11:38) Цит... Jan 29 2007, 12:10 mihask Цитата(unichorn @ Jan 29 2007, 15:10) Цит... Jan 29 2007, 12:29 unichorn Примерчик можно, сам проэкт сдох чёрт знает когда,... Jan 29 2007, 13:10 mihask Цитата(unichorn @ Jan 29 2007, 16:10) При... Jan 29 2007, 13:46 el34 2Abakt оч. рекомендую поглядеть
"Ted Jensen... Jan 29 2007, 14:15 Abakt Цитата(el34 @ Jan 29 2007, 14:15) 2Abakt ... Jan 29 2007, 22:27 el34 Abakt>Огромное спасибо! Читаю.
ну разумеетс... Jan 29 2007, 22:49         prottoss Цитата(SpiritDance @ Jan 30 2007, 19:12) ... Jan 30 2007, 15:24   prottoss Цитата(defunct @ Jan 30 2007, 04:46) масс... Jan 30 2007, 01:36    zltigo Цитата(prottoss @ Jan 30 2007, 00:36) Цит... Jan 30 2007, 02:26     prottoss Цитата(zltigo @ Jan 30 2007, 06:26) А, пр... Jan 30 2007, 02:36      zltigo Цитата(prottoss @ Jan 30 2007, 01:36) Вы ... Jan 30 2007, 03:27       prottoss Цитата(zltigo @ Jan 30 2007, 07:27) Перед... Jan 30 2007, 03:42      dryadae Цитата(prottoss @ Jan 30 2007, 02:36) Цит... Jan 30 2007, 13:13       prottoss Цитата(dryadae @ Jan 30 2007, 17:13) Цита... Jan 30 2007, 13:27        dryadae Цитата(prottoss @ Jan 30 2007, 13:27) Цит... Jan 30 2007, 13:49         prottoss Цитата(dryadae @ Jan 30 2007, 17:49) Крив... Jan 30 2007, 14:41       prottoss Цитата(dryadae @ Jan 30 2007, 17:13) Вы п... Jan 30 2007, 14:12        dryadae ЦитатаЦитата(dryadae @ Jan 30 2007, 17:49... Jan 30 2007, 14:43    Сергей Борщ Цитата(prottoss @ Jan 30 2007, 00:36) Ест... Jan 30 2007, 12:13     prottoss Цитата(Сергей Борщ @ Jan 30 2007, 16:13) ... Jan 30 2007, 12:29      Сергей Борщ Цитата(prottoss @ Jan 30 2007, 11:29) Цит... Jan 30 2007, 16:55       prottoss Цитата(Сергей Борщ @ Jan 30 2007, 20:55) ... Jan 30 2007, 17:13 SasaVitebsk Чем прелестно программирование, что можно любую оп... Jan 30 2007, 01:26 dryadae Да Бог с вами. Только накушаетесь вы со стеком, по... Jan 30 2007, 14:50 prottoss Цитата(dryadae @ Jan 30 2007, 18:50) Да Б... Jan 30 2007, 15:01  dryadae Цитата(prottoss @ Jan 30 2007, 15:01) Цит... Jan 30 2007, 15:05   prottoss Цитата(dryadae @ Jan 30 2007, 19:05) Это ... Jan 30 2007, 15:10 defunct protoss
Цитатапрекрасно понимают о чем говорят и ч... Jan 30 2007, 18:06 prottoss Цитата(defunct @ Jan 30 2007, 22:06) prot... Jan 30 2007, 18:12  dryadae Цитата(prottoss @ Jan 30 2007, 18:12) Цит... Jan 30 2007, 18:20  prottoss Цитата(prottoss @ Jan 30 2007, 22:12) Зде... Jan 30 2007, 19:01   defunct Цитата(prottoss @ Jan 30 2007, 18:01) Цит... Jan 31 2007, 02:17
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|