|
Have n't u seen the links i provide (size of int )
|
|
|
|
|
Yes but if he needs to convert a INT32 that is, by definition (unless he isn't using the BaseTsd.h header), a signed int then the assignment
INT32 i32 = 10;
int i = i32;
it is valid.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
|
|
|
|
|
when int is 16bit it truncates . ok just started as joke
modified on Monday, February 11, 2008 11:27 AM
|
|
|
|
|
On a 32 bit machine, int is just 32. On a 64 bit machine, int becomes 64 but INT32 would still be 32. Or I'm wrong ?
OK,. what country just started work for the day ? The ASP.NET forum is flooded with retarded questions. -Christian Graus
Best wishes to Rexx[^]
|
|
|
|
|
I was thinking that the size of int depended on the machine, too, but on the website mentioned above by CPallini, it says that the size of int (and unsigned int) is 4 bytes, and that __intn (where n is 32, 64, etc) specifies that a specific number of bytes is used. So it sounds like maybe int is always the same as INT32?
Now I'm confused about whether INT is the same as int or __intn. That is, do the capitalized versions of data types (INT, UINT, LONG, DOUBLE, etc.) depend on the machine, unless specified as INT32, INT64, etc?
Thanks!
|
|
|
|
|
The size depends on how the compiler interprets the data type, which is
usually based on the target machine type.
For Microsoft specifically, int, long, INT, LONG all remain 32 bits regardless
of compiling for 32 or 64 bit.
Remember, the capitalized versions are Windows types, not C++ language
types.
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Microsoft wisely chose to keep the int and long data types 32 bits wide,
even in the 64-bit compiler.
This is microsoft-specific - other compilers may have different widths for int and long.
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Thanks! That's very helpful.
One last question: if you wanted to use type int and be sure its size was 4 bytes regardless of what compiler was used, is there any standard way of doing this?
|
|
|
|
|
From the docs:
"The types __int8, __int16, and __int32 are synonyms for the ANSI types that
have the same size, and are useful for writing portable code that behaves
identically across multiple platforms. The __int8 data type is synonymous
with type char, __int16 is synonymous with type short, and __int32 is synonymous
with type int. The __int64 type has no ANSI equivalent."
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
But the documentation says that __int8, __int16, __int32 and __int64 are Microsoft-specific. Isn't that the same as saying you must be using the Microsoft compiler to use these types? I was looking for something that would also use the same number of bytes if the Borland compiler or some other compiler was used.
Thanks.
|
|
|
|
|
They're actual keywords in Microsoft, so in that sense they are MS specific.
They can easily be defined (using macros or typedef) on other compilers if
necessary.
Until there's some standard for this, all compilers will need to define the size-specific
int types somehow
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Thanks for the good information. A big 5 gold star for you!
|
|
|
|
|
Heh no problem - and thanks for the gold star!
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Thanks Mark
OK,. what country just started work for the day ? The ASP.NET forum is flooded with retarded questions. -Christian Graus
Best wishes to Rexx[^]
|
|
|
|
|
Hi all,
i want to search for files containing particular phrase, just like windows "A word or phrase in file:" utility in search option. Does anybody knows any windows API or programming logic for this issue?
|
|
|
|
|
sandeepkavade wrote: Does anybody knows any windows API or programming logic for this issue?
1) Open file
2) Read contents into buffer
3) Search buffer for phrase
4) Close file
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
They are xml files and i have to search for value of particular node. Reading the file and using MSXML is better option or taking it in CString and calling .find() will be a better option?
modified on Monday, February 11, 2008 11:39 PM
|
|
|
|
|
You could always try TinyXml and compare the two approaches. That way you'll know which is the best for your situation.
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
|
hi...
how to insert into a image file on sql database?
how to convert image file format to binary format?
pls can anyone help me?
paulraj
|
|
|
|
|
gnanapaul wrote: how to convert image file format to binary format?
An image file is already in "binary" format (i.e., it's not plain text).
Have you seen this?
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Hi all
I want to enumerate devices in DirectSound through CreateClassEnumerator for Audio playback devices
I have used CLSID_AudioRendererCategory as CLSID but it gives me audio renderer how can i configure it to 2 sound devices rather than renderers
Can anybody help me, please ?
Jabeen
|
|
|
|
|
|
~Jabeen~ wrote: I want to enumerate devices in DirectSound through CreateClassEnumerator for Audio playback devices
ICreateDevEnum::CreateClassEnumerator is for DirectShow where it works on renderer , In DirectSound u need to enumerate using DirectSoundEnumerate and create ur directsound object for this device using DirectSoundCreate8 passing the GUID obtained while enumerating.
modified on Monday, February 11, 2008 6:06 AM
|
|
|
|
|
Hello everyone,
My question is whether my understanding of the solution to type safe issue in CoCreateInstance is correct. There is type safe issue in CoCreateInstance,
http://msdn2.microsoft.com/en-us/library/ms686615.aspx
STDAPI CoCreateInstance(
REFCLSID rclsid,
LPUNKNOWN pUnkOuter,
DWORD dwClsContext,
REFIID riid,
LPVOID * ppv
);
which means the riid and ppv may not conform to each other, for example, we have a IY* variable pIY and wants to get IZ type interface, CoCreateInstance (rclsid, pUnkOuter, dwClsContext, IID_IZ, &pIY);
To solve this issue, the solution from Inside COM is,
1. Define a template class smart pointer IComPtr<t, iid*="" iid="">, where T is type of interface to wrap, iid is its related interface IID;
2. Define a function in the template class called CreateInstance, the implementation is,
2.1 invoke Release(); // release previous held pointer
2.2 invoke CoCreateInstance (rclsid, pUnkOuter, dwClsContext, *iid, &m_pI); // m_pI the wrapped interface pointer member variable for the smart pointer template class.
I think why the solution works, is because in the creation of the template class, the interface type T and iid is matched (example, through constructor or assignment operator), so when using the internal variable *iid and m_pI to invoke CoCreateInstance, the type always match (Interface ID and Interface type).
Is my understanding correct?
thanks in advance,
George
|
|
|
|