Sponsored Content
Top Forums Programming Why this const variable is not changing even after applying const_cast? Post 302519278 by Loic Domaigne on Tuesday 3rd of May 2011 02:04:49 PM
Old 05-03-2011
Quote:
It's not unheard of for a compiler to do this even for non-constant variables
Yes, that's one of the major trouble when doing embedded device programming. For instance, you're mapping a hardware register. Your compiler has absolutely no chance to guess that the variable used for this - though not modified by your code - can be actually be changed by the HW. So you need to tell the compiler explicitly about this fact using volatile.

Thinking a bit more, I believe that "const volatile" has a raison d'être, at least for embedded code. You're just saying: "my program isn't supposed to modify this variable" but "this variable can be changed by external source, like HW".

Thanks Corona for your point!
Cheers, Loïc
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

IFS changing the variable value

Hi, I have a while read loop that reads files in a directory and process. The files have spaces in between, so I have the IFS=\n to to read the whole line as one file name. The read works fine but I have a problem with another variable that I set in the beginning of the script. The variable... (1 Reply)
Discussion started by: pvar
1 Replies

2. Shell Programming and Scripting

Changing a variable Question

I have a variable: $FILENAME = /XXXX/XXXX/XXXX/file.dat I want to set another variable that will give me this: $FILENAME2=filea.dat So basically i'm chopping up variable $FILENAME. Not sure cut will do this as i'm looking at different directories so the characther length may be... (2 Replies)
Discussion started by: Pablo_beezo
2 Replies

3. Programming

C++ type-casting a member variable in const methods

Is it permitted to type-cast a member variable passed in as a parameter in a member const method .. I am doing something like : in a return-type method () const { variable other = long(member variable) } this other assigned variable is not updating and I wonder if type-casting in such... (1 Reply)
Discussion started by: shriyer123
1 Replies

4. Programming

const_cast confusion

See code below. It appears that i and j inhabit the same address yet hold different values. Can anyone shed light on this? int main() { const int i= 3; int* j = const_cast<int*>(&i); *j = 5; cout << j << endl << &i << endl; cout << *j << endl << i; } (4 Replies)
Discussion started by: StuartH
4 Replies

5. Programming

C++ program is crashing on re-assigning const static member variable using an int pointer

Hi, Can any one tell me why my following program is crashing? #include <iostream> using namespace std; class CA { public: const static int i; }; const int CA::i = 10; int main() { int* pi = const_cast<int*>(&CA::i); *pi = 9; cout << CA::i << endl; } (6 Replies)
Discussion started by: royalibrahim
6 Replies

6. Shell Programming and Scripting

Changing variable name in for loop

Hi All please help if possible. I am a Unix novice. I have a similar question to the one posted by yonderboy at about a year ago. However his solution does not work for me. The pseudo code for my problem is as follows: for fund in 1 2 3 4 if (FTP is successfully) then FILE_SENT_fund... (2 Replies)
Discussion started by: Seether
2 Replies

7. Shell Programming and Scripting

Changing the variable using awk?

Dear all, I have kind of used both the awk/sed command and found them really useful. But at the necessity I am having right now, I need help. Actually, I would like to do the following in file script.sh PATH535="/eos/uscms/store/user/pooja04//analysis2012/535/mc/summer12/002/tt/" ... (2 Replies)
Discussion started by: emily
2 Replies

8. UNIX for Dummies Questions & Answers

Getting input and changing variable?

Hi I am new to scripting and have a function in my .sh script file that outputs a html radio button form weather_forecast_config() { echo "" echo "<html><head><title>Welcome</title></head>" echo "<body>" echo "<h2>Weather Forecast - Change City</h2>" echo "<form name="input"... (5 Replies)
Discussion started by: scriptnewbie
5 Replies

9. UNIX for Dummies Questions & Answers

Changing Path Variable

Blank Blank Blank (11 Replies)
Discussion started by: pvibien
11 Replies

10. Shell Programming and Scripting

Applying sed against a file from a list of values stored in a variable

Hi Forum. I have the following challenge at work that I need to write a script for. I have a file abc.txt with the following contents: 4560123456 4570987654 4580654321 I want to be able to search/replace in abc.txt - the first 4 characters anything starting with 4560 to 7777; 4570... (3 Replies)
Discussion started by: pchang
3 Replies
GUPNP_SERVICE_PROXY_ADD_NOTIFY(3)					 1					 GUPNP_SERVICE_PROXY_ADD_NOTIFY(3)

gupnp_service_proxy_add_notify - Sets up callback for variable change notification

SYNOPSIS
bool gupnp_service_proxy_add_notify (resource $proxy, string $value, int $type, mixed $callback, [mixed $arg]) DESCRIPTION
Sets up callback to be called whenever a change notification for variable is recieved. PARAMETERS
o $proxy - A service proxy identifier. o $value - The variable to add notification for. o $type - The type of the variable. Type can be one of the following values: o GUPNP_TYPE_BOOLEAN - Type of the variable is boolean. o GUPNP_TYPE_INT - Type of the variable is integer. o GUPNP_TYPE_LONG - Type of the variable is long. o GUPNP_TYPE_DOUBLE - Type of the variable is double. o GUPNP_TYPE_FLOAT - Type of the variable is float. o GUPNP_TYPE_STRING - Type of the variable is string. o $callback - The callback to call when variable changes. Typically, callback function takes on three parameters. The $variable parameter being the first, $value parameter being the second, and the $arg is third. o $arg - User data for $callback. RETURN VALUES
Returns TRUE on success or FALSE on failure. SEE ALSO
gupnp_service_proxy_remove_notify(3). PHP Documentation Group GUPNP_SERVICE_PROXY_ADD_NOTIFY(3)
All times are GMT -4. The time now is 08:46 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy