Hola gente... me hace horas estoy perdiendo de a poco la paciencia con esto :D Pasa que una variable me está volviendo loco...<br><br>Alguien me podrá ayudar??<br><br>El tema es el siguiente. En el main tengo un archivo externo incluído donde  tiene una línea que dice: 
<br>extern char buffer[512];<br>y otra:<br>extern int enviar(char *buffer,SOCKET socket);<br><br>Por lo que no tendría que redeclararla... la utilizo normalmente... y me da algunos dolores de cabeza:<br><br>strcpy(buffer,"flksdjfdkjs");
<br>enviar(buffer,socket);<br><br>en otro archivo (sock.c) donde sí esta declarada la variable buffer como <br><br>char buffer[512];<br><br>Se encuentra la función enviar<br><br>cuando quiero que envíe lo que hay en el buffer no lo hace... manda alguna que otra vez solo unos caracteres de ella (en realidad 4)....
<br>pero si pongo en el main <br><br>enviar("fjksdhfjhdfjkasdhjkhkfjsfdsakjfsdkljfaldsjk",socket);<br><br>Lo hace con normalidad...<br><br>La funcion enviar es simple:<br><br>int eviar(char *buffer, SOCKET conn_soket){
<br>return send(conn_socket,buffer,sizeof(datos),0);}<br><br>nada más!!!!<br><br>Y lo peor de todo es que si agrego estas lineas en la función enviar:<br>sprintf(buffer,"%d %s",(int) sizeof(buffer),buffer);<br>MessageBox(hwnd,buffer,TITULO,MB_OK);
<br><br>Me muestra un msgbox que dice 4 4 4 4 4 4 4 4 4 4.... solo eso...<br><br>Todo raro muy raro.! alguien tiene alguna idea de que es lo que hago mal?<br><br>Muchas gracias.. saludos!!!<br>