It's a very unusual question. But i can be wrong. Don't panic to link all the default .lib's. There is no more code as you use (DevStudio does so). But further you can remove all .lib's and bind only libs you want. Sample:
#pragma comment ( lib, "XYZ" ) // thats what i do
M$ itselves has prepared a .csv file to examine what .lib you need. You can find it at:
oder <xyz>\Microsoft Visual Studio\VC98\Lib\WIN32API.CSV
and so on.
The debug info of crt*.obj or -.lib is sometimes not included to the debug database or the compiler can't find them. The reason can be a manually installation of DevStudio or installation to another path than the default path. Therefore you have to tell the compiler where the source code file resides.
Did you read my post ?
That is a standard behaviour. If you want to convert an integer (let's say 3) in binary string, you won't have the zeros in front of the number, that sounds logical isn't ?
So, when you convert 3 into a binary string, it's logical that you get '11' and not '0011' (how can the compiler knows that you want 2 zeros at the begining of the string). The same when you convert 1 into a string, you will get '1'.
I think you want to convert a binary string into its value ? Right ?
Maybe you can write a simple function to do that:
int BoolStringToVal(char* szString)<br />
int Value = 0;<br />
for (int Index=strlen(szString)-1; Index>=0; Index--)<br />
int BinValue = 1 << (Index - strlen(szString) + 1 );<br />
if (szString[Index])<br />
Value += BinValue ;<br />
return Value;<br />
So, what it does is look for each char in the string and if this char is 1 then we add its corresponding value to the total value. The code has not been tested so I'm not sure if this will work, but you got the principle.