Сроки проблема в C - PullRequest
       10

Сроки проблема в C

2 голосов
/ 06 декабря 2010

У меня нет хорошего опыта в c ... я просто хочу изучить некоторые практические сценарии, которые будут реализованы в c .... например, как я могу реализовать следующее в коде C ...

y = 1, когда x = 1
у = 0, когда х! = 1

главное что ....

output y изменяется при изменении входа x и должен сохранять свое состояние в течение 1 секунды , если есть какие-либо изменения на входе в течение 1 секунды сохранить свое прежнее состояние.

пожалуйста, помогите мне в этом ... и, пожалуйста, помогите мне, как подобрать для этого типа логики .. пожалуйста

Ответы [ 2 ]

2 голосов
/ 06 декабря 2010

Если вы можете позволить себе ждать в ожидании, когда x не меняется, тогда

volatile int x;
int old_x, tmp = x;
while (1){
    y = ((old_x = tmp) == 1);
    Sleep(1000);
    while(old_x == (tmp = x));
}

если у вас есть какое-либо событие или прерывание, когда оно изменилось, это можно сделать без ожидания ожидания.

0 голосов
/ 06 декабря 2010

Как только вы выясните, как вы хотите обрабатывать ввод-вывод и синхронизацию, это возможности для соответствующего теста:

y = (x == 1 ? 1 : 0);

или

if (x == 1) 
    y = 1;
else 
    y = 0;

или

y = 0;
if (x == 1)
    y = 1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...