|
Remember you're not really copying values around, you're copying pointers. So when you do:
sz123[ 0 ] = c;
You're just creating an alias to the block of memory that contains "hello." I'd suggest (unless you're stuck programming in C) to avoid using character arrays, character pointers and C style strings and just use C++ strings - then when you copy them around you're actually copying values and not aliases.
Cheers,
Ash
|
|
|
|
|
sz123[0] = _strdup(c);
free(sz123[0]);
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]
|
|
|
|
|
Is it possible to use the globally declared LPSTR variable in other class by using extern function?
|
|
|
|
|
Karthika85 wrote: Is it possible to use the globally declared LPSTR variable in other class by using extern function?
You're mixing a bit different domains here. If the variable is global then you may use it everywhere (don't forget to call free when you no longer need the string).
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]
|
|
|
|
|
No,I am not able to use the globally declared sz123[0] variable in another class:
In class1:
LPSTR sz123[10];
char c[20] = "test";
sz123[0] = (LPSTR)malloc(sizeof(c[0]) * (strlen(c) + 1));
strcpy(sz123[0], c);
In class2:
extern LPSTR sz123[10];
char ch1[20];
strcpy(ch1,sz123[0]);
It is showing the following error
"error LNK2001: unresolved external symbol "char * * sz123":
|
|
|
|
|
You must be precise. A global variable cannot be declared inside a class (it wouldn't be global).
So what do you intend to do?
Do you want to use a global variable?
Do you want to make an object's member variable available to objects of different classes?
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]
|
|
|
|
|
I decalred a global variable array not class variable in one class and i want to use that gloabl variable in another class.
|
|
|
|
|
And what's your problem?
For instance:
int global_counter=0;
and
extern int global_counter;
void show_counter()
{
cout << global_counter << endl;
}
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]
|
|
|
|
|
previously i used static keyword. so,i got that error. now i removed the keyword static.
|
|
|
|
|
You need to declare it extern in all modules, and initialize it in only one.
It's time for a new signature.
|
|
|
|
|
Got it.I should not use static keyword to use in other cpp files
|
|
|
|
|
Of course. The static qualifier, for varibles declared outside classes, makes the variables themselves having file-scope.
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]
|
|
|
|
|
Hi,
I am using combobox control in a tabbed dialog box.
Whenever user presses enter key from combobox.
The tabbed dialog disappears means it will close.
For that i am deriving my own combobox
and overriding the WM_CHAR event.
But the control is not coming in that event.
How to catch the enter key event from the combobox.
But the same thing is happening in My derived edit control.
|
|
|
|
|
Maybe WM_GETDLGCODE[^] can help you with that.
> The problem with computers is that they do what you tell them to do and not what you want them to do. <
> "It doesn't work, fix it" does not qualify as a bug report. <
> Amazing what new features none of the programmers working on the project ever heard of you can learn about when reading what the marketing guys wrote about it. <
|
|
|
|
|
Ok thank you
it is working.
|
|
|
|
|
Cool, yourwelcome.
> The problem with computers is that they do what you tell them to do and not what you want them to do. <
> "It doesn't work, fix it" does not qualify as a bug report. <
> Amazing what new features none of the programmers working on the project ever heard of you can learn about when reading what the marketing guys wrote about it. <
|
|
|
|
|
Hi,
I want to convert the VC6 code into VS 2008 but i found that they are many different in UI. Any online material or ebook got these information? I had find in web, but no any website got provide the UI functionality compare between VC6 and VS2008.
|
|
|
|
|
the UI of the IDE ? or the UI of the framework (MFC) ?
VS2008 is based on VS2005 which is base on VS2003.net and VS2002.net; which is based (I think) on the VB IDE.
The major differences are the docking windows, different key mapping, the removal of the class wizard; and integration of all languages under on and unique IDE.
Other than that, more specific questions you have ?
Watched code never compiles.
|
|
|
|
|
If you're doing MFC development the FunctionX[^] site is quite good.
However, it seems that their tutorial with screen shots is now showing VS 2010 rather than VS 2008. One difference is that they've brought back ClassWizard in VS 2010. Other parts of the UI might be the same.
It's possible that they may have archived page content for VS 2008. Maybe try emailing them?
Kevin
|
|
|
|
|
I think there is not many differents ,I now in China and many company still use vs6
|
|
|
|
|
Hello Guys
Is there a way to change the name of the exe that gets built during compilation. I want to define flags based on which the exe name should be generated (I donno where to define the flags as well), for example if i define a flag #define MY_EXE "myexe.exe" then the exe name generated should be myexe.exe. If i define a flag #define YOU_EXE "youexe.exe" then the exe name generated should be youexe.exe
Thanx in advance
|
|
|
|
|
|
Is there a way to find out whether a rectangle or a point (given in screen coordinates) is contained in any monitor currently attached to the system?
The background of my question is this: During shutdown, my dialog based MFC application stores its current screen coordinates in the registry. When I open the application the next time, it fetches the coordinates and moves the window to where it had been during the most recent session.
If I move the dialog to my secondary monitor and close it, then unplug the monitor and restart the application, the dialog displays itself on an invisible part of the desktop . In this case, I'd prefer to use the default location - the center of the primary monitor.
|
|
|
|
|
There are several functions that would work.
MonitorFromPoint /MonitorFromRect will give you a handle to the monitor.
You can then use this handle in the function GetMonitorInfo to get more information.
Here is an example from MSDN on how it could be done -
Positioning Objects on a Multiple Display Setup[^]
|
|
|
|
|
Superman, that was a superfast and supergood answer. It works Thanks!
|
|
|
|