我在调试程序时出现:
--------------------Configuration: Cpp1 - Win32 Debug-----------
Compiling...
Cpp1.cpp
d:\microsoft visual studio\vc98\include\stdio.h(36) : error C2143: syntax error : missing ';' before 'string'
d:\microsoft visual studio\vc98\include\stdio.h(36) : fatal error C1004: unexpected end of file found
执行 cl.exe 时出错.
经认真检查后发现源代码没有错误,开始也以为C++类库的stdio.h有错误,调试后发现也没有错,然后不知道该怎么办了,源程序如下:
#include"F:\study\毕业设计\pop\initsock.h"
#include<stdio.h>
CInitSock initSock; //初始化Winsock库
int main()
{
//创建套接字
SOCKET sListen=::socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
if(sListen==INVALID_SOCKET)
{
printf("Failed socket()\n");
return();
}
//填充sockaddr_in结构
sockaddr_in sin;
sin.sin_family=AF_INET;
sin.sin_port=htons(4567);
sin.sin_addr.S_un.S_addr=INADDR_ANY;
//绑定这个套接字到一个本地地址
if(::bind(sListen,(LPSOCKADDR)&sin,sizeof(sin))==SOCKET_ERROR)
{
printf("Faile bind()\n");
return();
}
//进入监听模式
if(::listen(sListen,2)==SOCKET_ERROR)
{
printf("Failed listen()\n");
retrun();
}
//循环接受客户的连接请求
sockaddr_in remoteAddr;
int nAddrLen=sizeof(remoteAddr);
SOCKET sClient;
char szText[]="TCP Server Demo!\r\n";
while(TRUE)
{ //接受新连接
sClient=::accept(sListen,(SOCKADDR*)&remoteAddr,&nAddrLen);
if(sClient==INVALID_SOCKET)
{
printf("Failed accept()");
continue;
}
printf("接受到一个连接:%s/r/n",inet_ntoa(remoteAddr.sin_addr));
//向客户端发送数据
::send(sCinent,szText,strlen(szText),0);
//关闭同客户端的连接
::closesocket(sClient);
}
//关闭监听套接字
::closesocket(sListen);
retrun();
}
请各位大虾指教!!
VC++ 无法调试
一般这种情况是因为调试的时候程序非法造成的,把相应的进程结束就行了。大多数原因是因为那个***.exe的可执行文件不可写造成的。
高手们,帮忙看下这个C++程序的错误在哪里? 我想找出矩阵中最大的数...
找一个矩阵的鞍点,鞍点就是(数X在这一行上最大,而在他所在的列上最小) .看看能不能做了.比如说一个矩阵a[3][3]={1,2,3,4,5,6,7,8,9};那么鞍点就是a[0][2]=3
C++高手请帮助
1、首先看图书包括什么属性:图书编号(应该能确定是那本书),图书名,作者,等等这些是常用的,能确定这本书的一些属性。有的时候不需要全部都写,不过这一类的数据不能少 2、然后是看看干什么用的。像你这个题目,应该是买书卖书的样子。那就应该有图书的价格吧。应该有买几本书吧。从设计的角度...
[100分]visual c++ 运行时中文乱码问题
那是因为你的控制台程序(就是那个黑色的运行窗口)没有设置,你在上面点击右键然后可以设置你需要的显示时的字体。这样就可以了。不会是乱码
c++的高手们,我刚学这个不到两天,有点疑问能帮我解决一下吗。
z只能放一个字符变量,即使z1='stx', z1也只能接受第一个字符,也就是‘s',你查一下s在ASCII的值。如果你想将字符串stx搞成ASCII中的那个排第二的符号,可能需要转义号来赋值,比如z1='\\n',,这样的话z1就是13,回车符。ASCII表的那个stx不一定能转义。
dev C++出现错误Pernission denied ld returned 1 exit status_百度知...
struct nod *q,; \/\/这个地方 分号 前头多了一个 逗号 还有一个楼上说的不对的地方,就是main的定义:根据c99规则main()当不定义类型时,默认为int型,并且若定义,main()也只能为int型。虽然在DEV中,void main()是可以通过编译的,但不符合标准。比如你找北大的OJ去测个程序,应该用void main...
...下面是源代码,就是Letsgo()函数有问题,不知道哪里错了,请高手...
if(k<=0)return -1;\/\/\/ n=v[--k]; \/\/返回上个空格,重新计算 integers[n\/9][n%9]=0;}
安装C++出问题
首先,安装的盘区一定要系统盘.然后,你是下载的安装程序的话.不要运行SETUP.EXE,运行AUTORUN,就行了,即使中间再出现什么错误提示,别管他,点继续就能安好了
请教电脑高手:应用程序错误要怎么办?
c\/c++编写的程序通常不进行严格的错误检查,当采用malloc来分配内存而可供分配的地址空间不够的情况下返回null指针。但是代码不检查这种错误,认为地址分配已经成功,于是就访问0X00000000的地址,于是就发生内存违规访问,同时该进程被终止。ASCII字符填充组成的pif文件时会出现以下情况:一个非法的pif文件(用...
C++高手们我想问一下 a=2*k!=im;这句是什么意思,是怎么样运算的?
这句清楚一点应该是:a = ( (2*k) != (!m) );即把k乘2,再把m取反,作比较是否不等,将结果赋值为a.逻辑上来说这个没什么实际意义。因为!m或者1(true)或者0(false). 而2*k只能在k = 0时是0。其他情况也不等于1。所以只有m == true 而 k = 0(false)时,a才会为false。因此这...