|
hi,
when it is tried to move the child dialog using mouse, normaly it will move outside of the parent dialog. But i want to restrict it with in the cordinates of the parent window.
do you have any idea???
Dream bigger... Do bigger...Expect smaller
aji
|
|
|
|
|
Dear All,
I need to create a XML file using VC++.
is there any lib files/api's available for doing this ?
Kindly gice me good idea about this.
Thanks.
|
|
|
|
|
MsXML , TinyXML , PugXML , etc...
|
|
|
|
|
hi
I dont know about these thinks.
Can you expalin those more ?
Thanks.
|
|
|
|
|
|
I still don't understand, why did you change the colour to blue?
|
|
|
|
|
hum, i'm not sure to get you at all...
|
|
|
|
|
|
quite... asking for precision, because i didn't understand his post.
|
|
|
|
|
I dont think its question but Im wordering he gets 3 votes(5)
|
|
|
|
|
dunno, but none from me, as long as i don't understand the post.
|
|
|
|
|
Sometime for example you answer to a message, your answer is perfect but you get a lower vote but sometime you say a word but you get 5 voted now I'm wordering why? like this he says why color is different ?
|
|
|
|
|
it was certainly humour. i don't this the guy was attempting to down me there
|
|
|
|
|
But I dont agree with you I believe you are successful and you will successful,you have a character that I like it I think you are frank and I think its good
|
|
|
|
|
thank you
let's keep it good then
|
|
|
|
|
WalderMort wrote: why did you change the colour to blue?
It's called a "hyperlink."
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
I want to get an IP adress from the name of a camera in my network.I don't know what is the instruction.
I have the two but I used once a command that gives you the IP @ from an entrered name and I forgot it
salem ,c wiem.
|
|
|
|
|
salem wiem,
first of all, you should really read Beej's Guide to Network Programming[^].
i read it once i was at school, and it was really useful to begin with sockets.
for what you're looking for, the functions is gethostbyname() (cf. §4.10)
|
|
|
|
|
Hi all,
Iam trying to understand array of pointers and functions.
I tried doing the following but get warning messages. I have mentioned the warning message above the respective lines.
Can anyone help me fix it.?
Thanks in advance.
char * Names;<br />
int next = 0;<br />
char * list = "Abc";<br />
<br />
Names[ next ] = malloc( sizeof( char )*( strlen( list ) + 1 ) );<br />
memcpy( Names[ next ],list,sizeof( char )*( strlen( list ) + 1 ) );<br />
<br />
list = "cdefg";<br />
Names[ next+1 ] = malloc( sizeof( char )*( strlen( list ) + 1 ) );<br />
memcpy( Names[ next+1 ],list,sizeof( char )*( strlen( list ) + 1 ) );<br />
<br />
printf("vsp list got is %s\n", Names[0] );<br />
printf("vsp list got is %s\n", Names[1] );<br />
|
|
|
|
|
The problem is that Names is not an array of pointers but a simple char array. If you want a pointer array, you need to write this: char** Names; instead.
Also, instead of memcpy, you can simply use strcpy for a char array (if it is a null terminated string but in your case it is).
So, in your code snippet, when you do Names[0] for example, you simply access a character, not a pointer. That's why you get all these warnings.
|
|
|
|
|
malloc() returns a void* pointer. you should cast it into char* in your case.
BTW, are you coding C or C++ ?
if C++, abandon malloc() /free() for new /delete ...
for the printf() warning, %s is waiting for a char* , which is exactly what Names is. you should change its declaration into char** Names or char* Names[]
|
|
|
|
|
Hi all,
thanks for ur help.i do in C. I have corrected the code and i get no warnings now. but i would like to know if the following way of coding and passing the address of the first pointer to funcB is threadsafe in multithreaded environment.
is the follwing way of coding correct?Any help?
<br />
funcA{<br />
char * Names[] = {};<br />
int next = 0;<br />
char * list = "Abc";<br />
<br />
<br />
Names[ next ] = malloc( sizeof( char )*( strlen( list ) + 1 ) );<br />
memcpy( Names[ next ],list,sizeof( char )*( strlen( list ) + 1 ) );<br />
<br />
list = "cdefg";<br />
Names[ next+1 ] = malloc( sizeof( char )*( strlen( list ) + 1 ) );<br />
memcpy( Names[ next+1 ],list,sizeof( char )*( strlen( list ) + 1 ) );<br />
<br />
printf("vsp list got is %s\n", Names[0] );<br />
printf("vsp list got is %s\n", Names[1] );<br />
<br />
funcB(....,...,(const char**)&Names);<br />
}<br />
<br />
funcB(...,...,const char ** names)<br />
{<br />
....<br />
...<br />
free( (char*)names[0]);<br />
free( (char*)names[1]);<br />
<br />
}<br />
<br />
<br />
|
|
|
|
|
the way of passing parameters to a function doesn't affect the "thread safety" of the code...
if the resource is potentially alterable by several threads at the same time, then each thread must lock the resource before using it (and of course releasing it then)...
|
|
|
|
|
Say, the pointer of arrays char** Names is used by many threads.
in which case, if i make a local copy of the names[0] and names[1] values inside funcB()
say,
funcB(...,...,char **names)<br />
{<br />
char ** buf;<br />
buf = names;<br />
<br />
<br />
free ((char*)names[0]);<br />
free ((char*)names[1]);<br />
}<br />
|
|
|
|
|
Names[ next ] dereferences the pointer, so it is actually a char . So when you try to assign a pointer to it (malloc returns void*), or assign it to a pointer (memcpy takes void*, %s as format string takes a char *), you try to assign an adress to to a value-type. This is of course not wrong, but it is most likely not what you want, hence the warning. The solution would be to declare char ** Names . Then you wold first have to allocate memory on Names with the size of the char * . Then you could allocate memory for Names[x] and do what you did here. I'm to lazy to write out the code here, also, figuring it out yourself is much better practice
Hope it helped a little.
|
|
|
|