| Автор | Повідомлення |
|---|
Вишня
Зареєстровано: 19 липня 2005 Повідомлень: 3
| 25 серпня 2005 7:01 Функція Покажчики в C | | |
|
| Де і в яких ситуаціях ми можемо використовувати функцію покажчики С в Вбудовані?
Чи може хто-небудь пояснити?
Спасибо ..... Cherry |
|
| Повернутися до початку | |
 |
IanP
Зареєстровано: 05 жовтня 2004 Повідомлень: 6454 Допомагав: 1535 Розміщення: Західне узбережжя
| 25 серпня 2005 7:24 Re: Функція Покажчики в C | | |
|
| | Цитата: | | Покажчики на функції, що не так, як загальний покажчик інші види використання. Тим не менш, одну загальну використання в ближній покажчики на функції як параметр функції виклику. | http://www.cs.cf.ac.uk/Dave/C/node12.html Привіт, IanP |
|
| Повернутися до початку | |
 |
Google AdSense

| 25 серпня 2005 7:24 Оголошення | | |
|
|
|
|
| Повернутися до початку | |
 |
echo47
Зареєстровано: 07 квітня 2002 Повідомлень: 4206 Допомагали: 566
| 25 серпня 2005 8:13 Функція Покажчики в C | | |
|
| | Ще одна поширена заявка функцію зворотного виклику. Наприклад, ви хочете Windows для виклику функції аудіо рекордер кожного разу, коли Windows отримує деякі зразки від мікрофона. Ви даєте Windows покажчик на аудіо рекордер функції. |
|
| Повернутися до початку | |
 |
мат
Зареєстровано: 26 лютого 2004 Повідомлень: 489 Допомагали: 35 Місце проведення: Сидіння для унітазу
| 25 серпня 2005 13:23 Re: Функція Покажчики в C | | |
|
| Функція покажчики, не часто використовується в Embedded C, більше для PC сторону програмування. В основному, це покажчик на функцію, і в залежності від функцій, які покажчика крапок, можна виконувати різні функції, які повинні виконуватися в тій же рядку коду.
Одним із прикладів спосіб його використання полягає в тому, що у вас є масив покажчиків функція, яка вказує на повідомлення навантажувачів, кожен інший тип повідомлення, що призначений для проведення того ж індексу в якості обробника повідомлень.
Таким чином, ви можете зателефонувати-то вроде | Код: | fnPtr [MSG-> тип] (MSG);
| [/ Код]
Додано: Одним з можливих використовувати покажчики на функції вбудованого C, являє собою задачу планувальника. |
|
| Повернутися до початку | |
 |
njfane
Зареєстровано: 27 жовтня 2004 Повідомлень: 15
| 26 серпня 2005 11:00 Re: Функція Покажчики в C | | |
|
| це гарний вибір для заміни в разі перемикання стану машин з використанням функції покажчик, у випадку, коли державна машина занадто багато випадків перемикання. це робить програму більш компактною. |
|
| Повернутися до початку | |
 |
Bingo600
Зареєстровано: 26 серпня 2004 Повідомлень: 239 Допомагали: 14
| 27 серпня 2005 14:35 Функція Покажчики в C | | |
|
| Це непоганий Dokument з цього питання
http://www.newty.de/fpt/zip/e_fpt.pdf
http://www.newty.de/fpt/index.html
/ Бінго |
|
| Повернутися до початку | |
 |
btbass
Зареєстровано: 20 липня 2001 Повідомлень: 1137 Допомагали: 106 Місце проведення: Оберон
| 10 Вересня 2005 15:21 Re: Функція Покажчики в C | | |
|
| Функція покажчики є дуже корисними у вбудованих систем. Як впорядкувати перемикання заяву. Крім того, дуже корисним в меню системи. Коли мене вибрали, а індекс functon покажчик масиву.
Наприклад, кожна держава тут функція повертає наступний державної перейти на. Розпоряджаються код цілу програму в одну строку!
| Код: | /*--- Держава машина функцій. ---*/
UI_16 режимі очікування (недійсними); UI_16 запуску (недійсними); UI_16 працює (недійсними);
/*--- State Machine. ---*/
Enum STANDBY = (0, починаючи, RUNNING);
/************************************************* ******************** * Функція назва: головна * Опис: Програма відправною точкою. Ініціалізувати масив постійною функцією стрілками. Ініціалізувати державної машини в режимі очікування. Запустити державної машини.
************************************************** *******************/
SI_16 основних (вакууму) ( UI_16 (* Const Motor_State []) (недійсними) = (режимі, починаючи, біг); UI_16 держава = STANDBY;
для (;;){ Держава = Motor_State [держави] (); / * виклик державної функції * / ) )
/*--- Кінцевого файлу. ---*/
|
|
|
| Повернутися до початку | |
 |
raj_rohit10
Зареєстровано: 14 липня 2004 Повідомлень: 113 Допомагали: 1
| 13 вересня 2005 7:19 Re: Функція Покажчики в C | | |
|
| привет найкращим чином використовувати функцію покажчик того, що я відчуваю це implimentation в FSM і як він сказав erlier 2 один дзвінок функції. |
|
| Повернутися до початку | |
 |
abhishek_elec
Зареєстровано: 09 вересня 2005 Повідомлень: 15 Допомагали: 1 Місце проведення: Індія
| 13 Вересня 2005 12:42 Re: Функція Покажчики в C | | |
|
| Функція покажчики є корисними, якщо у вас генералізованої процедури або Algo і хочу, щоб використовувати цю процедуру на різні типи даних.
За шт., Якщо у вас гарна сортування Algo, і в хочете використовувати Algo ж за чисельністю, алфавиту, строк або яких-небудь даних, регулюються деякі правила сортування. У цьому випадку у вас просто написати різні "Порівняти" функції для кожного типу даних, і в головному сортировку Algo, у передасть функції покажчика в якості аргументу. Таким чином, ті ж Algo можуть бути використані різні PPL у відповідності зі своїми потребами. Ніяких змін необхідно в основної частини Algo. |
|
| Повернутися до початку | |
 |
Муса
Зареєстровано: 22 січня 2006 Повідомлень: 9 Допомагали: 1
| 27 серпня 2006 9:33 Re: Функція Покажчики в C | | |
|
| Я currenlty використовували функцію покажчиків в моєму Із проектом, який є меню редактора. Мета дисертації полягає в тому, щоб покажчики написати ефективний, компактний і швидкий код. Мій код saple тут;
INT значення [] = (0x1F00, / / Alt S (^ Setup) 0x1400, / / Alt T (^ Шини) 0x1200, / / Alt E (^ Extensions) 0x1800, / / Alt O (^ оператор) 0x2600, / / Alt L (^ логгінг) 0x1900, / / Alt P (^ Паролі) 0x2200, / / Alt G (Settin ^ GS) 0x2300 / / Alt H (^ Довідка) );
/ / ------ Покажчики на функції --------------------------------- недійсним (* Запустити [8 ])();// Головне меню функцій недійсним (* Настройка [3 ])();// Пункт меню функцій недійсним (* Шини [9 ])(); недійсним (* Розширення [4 ])(); недійсним (* Оператор [3 ])(); недійсним (* логгінг [2 ])(); недійсним (* Паролі [3 ])(); недійсним (* Настройка [6 ])(); недійсним (* Допомога [10 ])(); //------------------------------------------------ ---------------
Main () ( .... / / Ініціалізація funtion покажчики Виконати [0] = ProcessSetup; Виконати [1] = ProcessTrunks; Виконати [2] = ProcessExtensions; Запустити [3] = ProcessOperator; Запустити [4] = ProcessLogging; Запустити [5] = ProcessPasswords; Запустити [6] = ProcessSettings; Запустити [7] = ProcessHelp; ......
/ / Читати клавіатурі ... I = bioskey (1); якщо (I) / / Якщо клавіатура готова ... ключ = bioskey (0); ще продовжувати; / / Якщо клавіатура не готові потім продовжити його перегляд
/ / Виконати в меню обраного користувачем для (J = 0; J <8; J ) ( якщо (ключові == значення [J]) ( якщо (! InProcess) ( InProcess = 1; Запустити [J] (); ) ) остальное, якщо (основні == 0x2D00) / / Alt X натиснуто ... тобто вийдемо повернення; ) .......... |
|
| Повернутися до початку | |
 |