|
Yeah I do have. but I dont know how to add the new interface in existing activex control. Can u please guide me to it ?
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg."
- Bjarne Stroustrup
|
|
|
|
|
Hi
I found that char could be converted to an interger as follows:
char c = 250;
int a = int(c)
How can I get the a value of a to be the same as what I put in? It sometimes comes out negative, although I can add 256. There is a simpler way?
thank you
|
|
|
|
|
thepersonof wrote: char c = 250;
thepersonof wrote: How can I get the a value of a to be the same as what I put in? It sometimes comes out negative, although I can add 256. There is a simpler way?
unsigned char c = 250;
Signed char limit is 127 .
Nibu thomas
Software Developer
|
|
|
|
|
thepersonof wrote: How can I get the a value of a to be the same as what I put in? It sometimes comes out negative, although I can add 256. There is a simpler way?
char c = 250;
int a = (int)(unsigned int)c;
|
|
|
|
|
thepersonof wrote: char c = 250;
int a = int(c)
char c = 250;
unsigned int a = (int)c;
??
|
|
|
|
|
Make c an unsigned char. (Yes, there are such a thing as signed and unsigned chars in C).
Or cast c to an unsigned char. So:
1.
unsigned char c = 250;
Or:
2.
int a = (int) (unsigned char) c;
Or both...
-- modified at 7:49 Thursday 6th April, 2006
OR:
int a = 250;
|
|
|
|
|
do you want the value of a to be 250 in this case?
We Believe in Excellence
www.aqueelmirza.cjb.net
|
|
|
|
|
Thankyou ... converted to an unsigned char and it works great
|
|
|
|
|
Yah i misunderstood. They are right.
We Believe in Excellence
www.aqueelmirza.cjb.net
|
|
|
|
|
union
{
char c[sizeof (int)];
int n;
} Convert;
char c = 250;
Convert.n = 0;
Convert.c[0] = c;
Then, in Convert.n you will get the proper value.
Good luck!
William
|
|
|
|
|
Geez
That's a really complicated way of doing that !
|
|
|
|
|
Chaa gia hai bhai!
We Believe in Excellence
www.aqueelmirza.cjb.net
|
|
|
|
|
|
hahahaha
What a solution yaar! Nice
Unique and innovative
We Believe in Excellence
www.aqueelmirza.cjb.net
|
|
|
|
|
...and you said what ?
|
|
|
|
|
i said "Chaa gia hai bhai" which means "Great job! brother!".
This is Urdu language idiom. It is used for a person who does something great.
We Believe in Excellence
www.aqueelmirza.cjb.net
|
|
|
|
|
thepersonof wrote: int a = int(c)
A cast is actually not necessary. You could accomplish the same with:
int a = c; because a char gets internally promoted to an int during such operations.
A char can hold values in the range -128 to 127, whereas an unsigned char can hold values in the range 0 to 255.
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
"There is no death, only a change of worlds." - Native American Proverb
|
|
|
|
|
Hi there.
As the other replies have stated, you need to use the unsigned char for values above 127. To perform explicit conversions in C++, you should use the static_cast instead of the old C-Style casts.
<br />
unsigned char c = 250;<br />
int a = static_cast<int>(c);<br />
Cheers
|
|
|
|
|
abbiyr wrote: To perform explicit conversions in C++, you should use the static_cast instead of the old C-Style casts.
For integral types, this is not necessary.
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
"There is no death, only a change of worlds." - Native American Proverb
|
|
|
|
|
Quite agree.
It is not necessary, the unsigned char will be cast correctly without it. I recommended it though, as it does explicity show the intentions of the developer.
|
|
|
|
|
When installing the VC6++ compiler on my PC (Win XP),
the installation process aborts with the message
"ODBC's SQLInstalldriver manager failed".
Can somebody please help ?
|
|
|
|
|
|
this did not help.
I even re-installed XP again,
the problem still exists.
|
|
|
|
|
have u tried installing the VC6 on a clean xp installation?
Ask not what your application can do for you,
Ask what you can do for your application
|
|
|
|
|
Yes, that went OK.
There is something wrong with my PC, I want to find out wat it is.
|
|
|
|