我不知道如何在 C 中使用字符串:
这是我服务器的一部分:即使我通过 telnet 提供字符“/”,也不会调用中断。
理想情况下,这将通过一次又一次地向它添加字符串 ch 来缓冲名为 get 的字符串,直到它到达某个字符,或者更好的是,一个字符串(但现在写它应该与一个字符一起工作,但我'我很想知道如何用字符串来做,所以我可以设计一个使用 CR+LF 作为分隔符的协议)。
char ch;
int index = 0;
char get[1024];
const char str[] = "/";
if ( read( client, &ch, 1 ) < 0 )
{
perror( "read" );
get[index] = ch;
index++;
int compareResult = strncmp(str, &ch, 5);
if(compareResult == 0){
index = 0;
close( client );
printf( "server responded, connection closed" );
break;
}
}
//if ( write( client, &ch, 1 ) < 0 ) { perror( "write" ); break; }
printf( "got stuff" );
为什么达不到
printf( "server responded, connection closed" );
线?
服务器的完整代码:http: //pastebin.com/j5tX3TEx