while(true)这里这是个死循环吗?怎么结束啊?

sockaddr_in remoteAddr;
SOCKET sClient;
int nAddrLen = sizeof(remoteAddr);
char revData[255];
while(TRUE)
{
// 接受一个新连接
sClient = accept(sListen, (SOCKADDR*)&remoteAddr, &nAddrLen);
//accept函数调用失败则继续等待连接。
if(sClient == INVALID_SOCKET)
{
printf("accept() error");
continue;
}
//打印出连接者的ip
printf(" 接受到一个连接:%s \r\n", inet_ntoa(remoteAddr.sin_addr));
//直到收到有效数据时才打印出来
int ret=recv(sClient,revData,255,0);
if(ret>0)
{
//为了防止打印出错,把字符串结尾设成0x00
revData[ret]=0x00;
printf(revData);
}
char *buff="\r\n我来了\r\n";
//发送数据
send(sClient,buff,strlen(buff),0);
// 关闭套接字句柄,结束会话
closesocket(sClient);
}

while(true)是个死循环,你可以先把true赋值给一个boolean变量,然后在while里面对它进行判断是否继续执行while语句追问

我在设置套接字进入监听模式时设置了5个连接,怎么结束循环呢
是不是该把continue换成break?

追答

可以,你可以调试不同种可能

温馨提示:内容为网友见解,仅供参考
无其他回答

while(true)这里这是个死循环吗?怎么结束啊?
while(true)是个死循环,你可以先把true赋值给一个boolean变量,然后在while里面对它进行判断是否继续执行while语句

如图while 循环里面写while(ture)是啥意思?是让循环不停止?还是判断当...
while(ture) 是 无限循环地 执行它的 { 循环体。}。循环体 内 必然 要有 条件语句:满足 什么 执行什么,满足什么 时 结束 循环(如果没有这个条件 就成 死循环了。)

while(true)这样的句型是怎么回事?
这样的循环是死循环。不过事实上并非如此。有时候并不确定什么时候结束。而是在循环体内判断。比如 int i = 0;while(true){ if(i >50 ) break;i++;\/\/ } 这只是一个例子,事实上,用这种循环往往是更复杂的情况。

while(true) do{循环条件}什么意思?
while是循环流程控制,使用的标准格式为 while(表达式){ 循环语句体;} 说明:①while循环的表达式是循环进行的条件,用作循环条件的表达式中一般至少包括一个能够改变表达式的变量,这个变量称为循环变量 ②当表达式的值为真(非零)时,执行循环体;为假(0)时,则循环结束 ③当循环体不需要实现任何...

while(true)是什么意思,在哪个语句里有?
while(true)就是无限循环语句。因为括号中的条件为true,所以永远不会跳出循环,除非语句块中有break语句才都能跳出循环。while是计算机的一种基本循环模式。当满足条件时进入循环,进入循环后,当条件不满足时,执行完循环体内全部语句后再跳出(而不是立即跳出循环)。while语句的一般表达式为:while(...

java中的while(true)语句的用法是什么
用法?问的好奇怪。while都是用来循环么。循环终止条件写true,这种情况,是需要在循环内主动终止循环的,要么使用return返回,要么使用break跳出循环。用在哪里呢?比如socket连接,服务端就需要一直等到客户端输入啊响应啊这么样的。还有很多其他的情况呢。需要你慢慢去发掘。对于楼上那一大波乱哄哄的回答 ...

while(true)是循环吗?
true 即表示为真。因此while(true) 是一个无限循环,因为表达式的值一直为真。下面是一个例子://向控制台打印1000遍“下次考试我一定要细心”如何呢?我们可以复制1000遍,那如果要1000000遍?在这里我们就要学习循环结构了;while循环;while(循环条件){ 循环体;} 执行过程:程序运行到while处...

java 中while true为什么是死循环?
while(条件判断){}\/\/如果判断的结果是真,那么就执行,如果结果是假就停止循环 while(true){};\/\/直接表明了结果是真,且一直是真,那么就会一直循环 同理 while(1==1){};\/\/1==1结果也一直是true, 所以也是死循环

线程中的while(true)在关闭线程时如何停止?
这个都已经是个死循环肯定关不了 你可以这样了 bool Flag;while(Flag)等到要关闭的时候设置Flag为false就可以退出了

c#中的dowhile循环true
这里是TRUE就会一直循环,就是所谓的死循环。while(当是FALSH的时候)就是不为真的时候,那就会退出循环了。一般情况下while()括号里是个表达式。外面先定义个变量。int i=0;do { i=i+1;}while(i<3)这个例子说明当i小于3的时候,表达式始终是真,就会循环,当循环了3次后,当i不小于3了,...

相似回答