socket编程,出现乱码
在server端,有个buf,用于read(fd,buf,MAX),即接收客户端发来的信息,但如果不初始化(charbuf[MAX]={'\0'};)仅仅声明的话,在服务...
在server端,有个buf,用于read(fd, buf, MAX),即接收客户端发来的信息,
但如果不初始化(char buf[MAX] ={'\0'};)仅仅声明的话,在服务器端,接收到的
信息打印到终端上是乱码,
但如果初始化后,可以正确打印出客户端发来的信息,请问这是为什么?
还有,我用printf语句调试时,read函数之后,printf("%s",buf),居然执行不到这一条
命令,甚至是不会执行read后的printf("debug");这条语句,求助啊!!!
ps:read后面的printf语句执行不到,是在buf没有初始化的情况下才有。 展开
但如果不初始化(char buf[MAX] ={'\0'};)仅仅声明的话,在服务器端,接收到的
信息打印到终端上是乱码,
但如果初始化后,可以正确打印出客户端发来的信息,请问这是为什么?
还有,我用printf语句调试时,read函数之后,printf("%s",buf),居然执行不到这一条
命令,甚至是不会执行read后的printf("debug");这条语句,求助啊!!!
ps:read后面的printf语句执行不到,是在buf没有初始化的情况下才有。 展开
2个回答
展开全部
能不能把你的程序贴上来~~这个要看了之后才能给出确定的答案~~
byte buffer [] = new byte[4*1024];
char buf[MAX];这只是声明Buf,但是你没有定义它~~~
给你举个例子:DatabaseHelper dbHelper =null;
SQLiteDatabase db = dbHelpe.geteReadableDatabase();
这里DatabaseHelper这是声明了一个 dbHelper,但是没有对他初始化,SQLiteDatabase db = dbHelpe.geteReadableDatabase();中却调用了他的一个方法,就会出现空指针异常~~~
byte buffer [] = new byte[4*1024];
char buf[MAX];这只是声明Buf,但是你没有定义它~~~
给你举个例子:DatabaseHelper dbHelper =null;
SQLiteDatabase db = dbHelpe.geteReadableDatabase();
这里DatabaseHelper这是声明了一个 dbHelper,但是没有对他初始化,SQLiteDatabase db = dbHelpe.geteReadableDatabase();中却调用了他的一个方法,就会出现空指针异常~~~
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
单片机,即单片微控制器,也称为单片微型计算机,是将中央处理器(CPU)、存储器(ROM,RAM)、输入/输出接口和其他功能部件集成在一块 在一个小块的集成电路上,从而实现对整个电路或系统的数字式控制。单片机不是完成某一个逻辑功能的芯片,而是...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询