![]() |
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| Højtstående Programmering Post spørgsmål om C, C + +, Java, SQL, og andre programmerings sprog her. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| SugarCRM CEO John Roberts fortæller os, hvordan hans selskab udviklet (video) | iBot | UNIX og Linux RSS Nyheder | 0 | 04-18-2008 05:30 PM |
| Ny wrapper script vil blive udviklet til wrap to ksh scripts | ishai82 | Shell Programmering og Scripting | 3 | 03-17-2008 04:45 AM |
| Hvordan var det Gollum udviklet? | Legend986 | Skriv her for at kontakte Site Administratorer og Moderatorer | 2 | 12-09-2007 08:37 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
Bug har udviklet
Fyre der er en anden fejl, der har udviklet ......... nu messaged over 6 bytes er trimmet og gentaget tilbage til client.After den første besked ekkoet ikke regular.I har lagt en løkke i både klient og server for at kontrollere, closing.Moreover for tilslutning tæt jeg også nødt til at sætte en anden klausul, at hvis der er en forbindelse pause i hverken server eller klient forbindelsen skal være lukket fra andre side.Below er serveren og clinet side koder efter tilslutning
Server Code:
while(j!=0)
{
memset(buffer,0,1024);/*clear buffer*/
n = read(newsockfd,buffer,1024);/*read from client*/
if (n < 0) perror("\n ERROR reading from socket \n");/*check for errors*/
len=strlen(buffer);
for(i=0;i<=len;i++)
{
//strcpy(buf1,&buffer[i]);
//strcat(buf1,&buffer[i+1]);
k= strcmp("/",&buffer[i]);
if(k==0)
break;
break;
}
for(p=i;p<=len;p++)
{
j= strcmp("q",&buffer[p]);
if(j==0)
{
close(newsockfd);
close(sockfd);
exit(0);
}
}
puts(buffer);/*print message by client*/
write(newsockfd,"\n Client wrote",14);/*write to client*/
n=write(newsockfd,buffer,sizeof(buffer));/*write to client*/
if(n<0)perror("Write Failed");
}
Code:
while(k!=0)
{
memset(&buf, 0, sizeof(buf));
printf("\n Enter Message for Server");
gets(buf);
rc = write(s, buf,sizeof(buf));
if(rc<0)
{
perror("write failed");
}
/* now that we are connected, start writing to the socket */
/* till write() returns 0, meaning the server closed */
/* the connection. */
len=strlen(buf);
for(i=0;i<=len;i++)
{
//strcpy(b1,&buf[i]);
//strcat(b1,&buf[i+1]);
l= strcmp("/",&buf[i]);
if(l==0)
break;
break;
}
for(p=i;p<=len;p++)
{
k= strcmp("q",&buf[p]);
if(k==0)
{
close(s);
exit (0);
}
}
read(s,buf1,14);
read(s,buf2,1024);
puts(buf1);/*print messages from server*/
puts(buf2);/*print messages from server*/
}
}
Senest redigeret af reborg; 07-23-2007 kl 09:03 AM.. Årsag: kode tags |
|
||||
|
Meget første anmodning skal du bruge code tags
Code:
n = read(newsockfd,buffer,1024);/*read from client*/
if (n < 0) perror("\n ERROR reading from socket \n");/*check for errors*/
Ønsker du at fortsætte, selv når n \u003d\u003d 0 Code:
if(k==0) break; break; Code:
if(j==0)
{
close(newsockfd);
close(sockfd);
exit(0);
}
Code:
write(newsockfd,"\n Client wrote",14);/*write to client*/ Code:
n=write(newsockfd,buffer,sizeof(buffer));/*write to client*/
if(n<0)perror("Write Failed");
}
Det samme mønster, hvor det fortsætter behandlingen, selv efter at skrive kalder returnerer en negativ værdi Code:
gets(buf); forsøger at bruge fgets. ![]() |
![]() |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|