Allgorythm to store and lock a variable value

Hi, I need an allgorythm to lock a variable value, so it remains constant through out the program once it runs.
I can

t be a constant though, because it changes from 0 to the value obtained from a function that reads a sensor value. The first read value I want to store, but the following should be read on a different variable.
So that I can compare the initial value to the present value commi9ng from the sensor.
I thought about the following, but this routine doesn
t give the desired rtesumlt since variable i is reset to 0 every time:

int i;
while (i<2)
{ InitAvg=Avg; // IntAvg should be locked, in a way that this condition exist only one time, after i reads 2 the while condition
i=2; // should stay wrong. Unfortunately i will reset to 0, when the program runs over it the next time.
}
Can someone give me an idea how to solve this?
Thanks a lot,
John.

Comments

  • Your code looks strange, for one i is never set to a value before you check it. I'll assume you meant "int i = 0;"

    I'm also not clear on your question, do you want to save a value on your harddrive? or are you saying every time you run the function you want the value to not be reset?

    If you are trying to save a value to the harddrive, look up fopen etc...
    If you are trying to keep a value from changing when you call the function you can make that value a static "static int i = 0" this will not reset the value when you return to the function.

  • Hi, thanks for answering!

    I'll assume you meant "int i = 0; <

    Yes that is right, the book says that when registering a variable this way the compiler autmaticaly will set its value to 0. Actually I checked this, it does this right.
    I am programming an µc, there I want to stor the value in the Ram. Since its a constant value I guess it would be better to store it in the Rom area but registering it as a constant, only the developer can set its value, but in my case I want the sensor to determine it`s value. Only the very first reading should be taken, and stored.
    This value I need to later compare to the momentary values the sensor gives, to calculate the difference between starting pressure and the momentary one.

    Ill try this static registration, thanks, but I doubt itll solve my problem.
    I think I´ll have to find a way to call this function to deliver the reading only a single time, and don`t call it any more afterwards.
    Thanks,
    John

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories