|
int i = _ttoi(csValue);
double f = _tstof(csValue);
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
[My articles]
|
|
|
|
|
Thanks CPallini & everybody else.
This solved my problem for int's but not for float as _ttof or _tstof id not defined in tchar also. I am using eVc++4.0 with WinCE 5. I can't find the functions in eVC help or tchar.h file also & it throws compilation error :
error C2065: '_tstof' : undeclared identifier
Any other alternative to do the above task would be great.
Thanks
Terry
|
|
|
|
|
Well you can rool your own version:
#ifdef _UNICODE
#define _tstof wtof
#else
#define _tstof atof
#endif
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
[My articles]
|
|
|
|
|
Thanks CPallini for your quick response.
I entered your code on top of my file (after #includes) & used _tstof(csValue), but it gives me the same error for wtof. I also can't find wtof or _wtof in Help of Evc++4. wtoi is available but not wtof. TChar.h is included.
error C2065: 'wtof' : undeclared identifier
Any further help, please.
Thanks
Terry
|
|
|
|
|
If ypur system really doesn't provide wtof , you may consider to convert your wide character string into standard (i.e. ANSI ) one, via WideCharToMultiByte ), and then use atof .
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
[My articles]
|
|
|
|
|
Hello,
Thanks. I tried the following way :
CString csValue;
GetDlgItem(IDC_PRICE_EDIT)->GetWindowText(csValue);
.....
char* dest;
WideCharToMultiByte(CP_ACP, 0, csValue, -1, dest, 10, NULL, NULL);
float flt = (float)atof(dest);
CString d(_T("Converted Float:"));
d.Format(_T("%s %.2f"), d, flt);
AfxMessageBox(d);
Using WideCharToMultiByte method, I put all values accordingly & converted to float using atof. I get the converted value. BUT as soon as the Converted .. msg box is displayed I also get "Assertion Failed!" :File thrdcore.cpp, Line 867 Abort/Ret/Ig. Retry or ignore doesn't respond so I have to select Abort. It points to
if (m_nDisablePumpCount != 0)
{
TRACE0("Error: CWinThread::PumpMessage called when not permitted.\n");
--------> ASSERT(FALSE);
}
of PumpMessage().
Where am aI going wrong can you point out? Do I need to change anything in Wide...(). AS dest is not initialized, I get warning message for that also.
I have also noted that in eVC++4 I get exceptions at Assert many times, any special reason?
Thanks
Terry
|
|
|
|
|
Trupti Mehta wrote: Where am aI going wrong
You didn't allocate memory for the dest buffer.
The buffer should large enough to get the converted string. Hence you may write
int iLen = csValue.GetLenght();
char * dest = new char[iLen+1];
WideCharToMultiByte(CP_ACP, 0, csValue, -1, dest, iLen, NULL, NULL);
delete [] dest;
or, using a reasonably large array:
char dest[MAX_PATH+1];
WideCharToMultiByte(CP_ACP, 0, csValue, -1, dest, MAX_PATH, NULL, NULL);
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
[My articles]
|
|
|
|
|
Thanks CPallini, its working perfectly as expected. Got rid from all type casts.
Thanks a lot to all of you trying to solve my problem.
Thanks
Terry
|
|
|
|
|
i think your running into trouble with the double cast
((char*)(LPCTSTR)csValue
i think LPCTSTR boils down to wchar_t
so the double cast (char*)(wchar_t*) would be doing horrid things
the wise Pallini has stated the appropreaite funcs
|
|
|
|
|
killabyte wrote: the wise Pallini
like Alfonso of my sign.
Thank you.
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
[My articles]
|
|
|
|
|
Yeah i really liked that quote in your sig
|
|
|
|
|
I like second more
Regards,
Sandip.
|
|
|
|
|
Trupti Mehta wrote: m_opNo = atoi((char*)(LPCTSTR)csValue);
What's with all the casts?
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
As DavidCrow asked....what's with the casts?
I always recommend using NO casts unless absolutely necessary.
If something doesn't compile without the cast, look CLOSELY AT WHY
before casting away the problem.
In this case, you casted away your compile-time problem and turned
it into a run-time problem
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Hi
Whats the difference between CFile and CStdioFile ?Why we are use CFile and CStdioFile?
Thanks
Nisha
|
|
|
|
|
Do you feel documentation (CFile [^] & CStdioFile [^]) inadequate on these subjects?
Roughly speacking, since CStdioFile inherits from CFile we espect the former augmenting the latter functionalities: a quick look at documentation show us two interesting methods (ReadString and WriteString ) provided only by CStdioFile .
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
[My articles]
|
|
|
|
|
CFile deals with any kind of files where CStdioFile deals with TEXT files by default with an implicit convertion of newline character 0x0a into a pair of (0x0d and 0x0a)
The two methods, WriteString and ReadString provided in CStdioFile class assumes the delimiters of each line in the file as CRLF and newline. It can also be used for binary files as well, but certain functionality provided by CFile like Duplicate(), LockRange() etc are not supported in CStdioFile.
|
|
|
|
|
If any body can quide me how can Control Panel designing (PC Interfacing) can be done in VC++. Any website or book for designing Control Panels to interface periferals to computer and control them and to collect data for manual test purpose please.
kd
|
|
|
|
|
Are you wanting to know how to create a Control Panel applet?
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Actually I know designing window of control panels, I need to know programming for coms interfacing and data retrieving from external pariferals connected to PC by I2C or RS232. If you know any helping website or book please?
kd
|
|
|
|
|
Read from and write to serial ports using ReadFile() and WriteFile() .
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Thanks a lot for help. It gave me a good clue.
kd
|
|
|
|
|
hi every body
can you help me with this
how can I get a bitmap from a path in a database field
in a static picture box in the form view
I am using visaul studioC++ ver 6
thanks
I am a Civil Engineer, graduated in 1969, I've a wide experience in quite many fields of civil engineering, aswellas in HR development, Quality assurance, planning and QC,
I've been employed by Consultant Offices, Contractor Companies,
I did services for both Public Sectors and Private Sectors,
I've been in charge in Projects located inside and outside Egypt,
I've dealt with both Arabic companies and American Companies.
All these movements have given me a great variety of experiences.
|
|
|
|
|
Is the problem with reading the path from database or loading and displaing the image or both ?
|
|
|
|
|
you see the program consider the field as a string
so how I tell him this is a file path not a string
becuse he fill the other Edit boxes with strings from
the other fields but for the picture box I gave him a static
variable and I use the loadimage and Bitblt but nothing
shown in the picture box
I am a Civil Engineer, graduated in 1969, I've a wide experience in quite many fields of civil engineering, aswellas in HR development, Quality assurance, planning and QC,
I've been employed by Consultant Offices, Contractor Companies,
I did services for both Public Sectors and Private Sectors,
I've been in charge in Projects located inside and outside Egypt,
I've dealt with both Arabic companies and American Companies.
All these movements have given me a great variety of experiences.
|
|
|
|