socket c c++ 结构体-socket发送结构体问题,无法在服务器端显示完整的结构体

问题描述

socket发送结构体问题,无法在服务器端显示完整的结构体

定义了如下结构体

在发送结构体的时候转换成char *类型

输入了如下学生数据__

在接收端也进行了数据类型转换,如下

为什么最后的年龄输不出来,而是一串数字,怎么解决?

解决方案

你发送的send是直接发送的student的指针,你需要把整个student的内容存到char数组,然后发送char数组,接收后,也要把char数组memcpy等复制回来

解决方案二:

sscanf处有&还能收到数据吗?

解决方案三:

  • 1.你在客户端都打印不出完整的结构体。你的输入部分有错误。szName和szGender应该不要&
  • 2.如果你要讨论服务器端的问题,你至少也要把服务器端你怎么做的贴出来,不然怎么讨论。

解决方案四:

1、你的scanf %s后对应的&真的大丈夫吗?
2、接收后 不应该那样直接指向,
应该定义一个新的结构体对象,然后将接收到的字符传给memcpy过去

解决方案五:

不要直接发送。。因为两端的平台可能不一样。。建议发送前转换成byte类型再发,收到后再转换格式

时间: 2024-08-07 08:54:18

socket c c++ 结构体-socket发送结构体问题,无法在服务器端显示完整的结构体的相关文章

数据包-在win7中使用socket UDP 编程时,数据发送不出来

问题描述 在win7中使用socket UDP 编程时,数据发送不出来 各位大哥大姐,我在使用 socket 做 UDP编程时,遇到一个非常奇怪的问题 1,在win7下使用 sendto 函数发送数据时,sendto函数的返回值正常,但是有时候没有数据发送出来(抓不到数据包),但是当拔掉网线,重插一下就有数据了,但是待会儿就又没有了(这个不是网线接触不好,因为电脑上网一直正常) 2,同样程序,在XP系统里没有问题 求高手指点,感激不尽!!!!!

【C/C++学院】0817-递归汉诺塔 双层递归 /CPP结构体 /面向过程与面向对象的编程模式/类的常识共用体实现一个类的特征/QT应用于类以及类的常识

递归汉诺塔 双层递归 #include <iostream> void han(int n, char A, char B, char C) { static int num = 1; std::cout << "第" << num << "次"; num++; if (n<1) { return; } else { han(n - 1, A, C, B); std::cout << A <&l

heapfree-结构体中的指针指向申请的内存空间,delete结构体变量前必须要释放吗?

问题描述 结构体中的指针指向申请的内存空间,delete结构体变量前必须要释放吗? 593行是必须的吗?解释下要或不要的原因. 解决方案 肯定需要啊,delete结构体指针,默认只会释放在结构体中直接声明的变量,对于new或者malloc出来的指针需要手动释放,而在实际的开发中为了方便, 我们常常将对结构体中指针的释放放在结构体的析构函数的,当然 像你这种用户也是没有问题的. 解决方案二: 进程退出会被OS自动释放所有的进程相关的空间,但是这样不是很正确,因为从代码角度有内存泄漏,比如你的程序如

socket-C#Socket编程,能实现客户端发送一个txt文件即可,怎么写?

问题描述 C#Socket编程,能实现客户端发送一个txt文件即可,怎么写? C#Socket编程,只写客户端(127.0.0.1:5555)能实现发送一个txt文件到服务器,文件目录可以直接指定,怎么写呢?大神们? 解决方案 只写客户端肯定是不行的,因为文件传输一般需要额外的信息在服务器才能完成文件的恢复:1)文件名,当然这个可以在服务端重起名.但这样就不好和客户端对应的了!2)文件在客户端传输时需要分包,所以在服务器端需要和包.3)传输过程一般为了防止数据错误,会有 CRC.等等,这些都需要

java-Java Socket网络通信问题,向百度发送数据(学习socket中~)

问题描述 Java Socket网络通信问题,向百度发送数据(学习socket中~) 我在本地客户端向百度某个端口(如:80)发送一个数据(例如字符a),百度会返回什么信息吗? 测了一下,并没有什么回应.那么我在本地客户端怎么做,百度才会返回一些信息 (例如:时间.网页新闻之类的消息) 解决方案 http://blog.csdn.net/b_h_l/article/details/8712282 解决方案二: 基于Java的socket网络通信Java网络通信Socket[Cocos2d-x]使

php 中利用 socket curl file_get_contents模仿用户post发送信息

开发中经常用到关于用程序 模仿用户post信息,下面我介介绍了几种方法,有需要的朋友参考一下. # <?php教程   # /**  # * Socket版本  # * 使用方法:  # * $post_string = "app=socket&version=beta";  # * request_by_socket('facebook.cn','/restServer.php',$post_string);  # */  # function request_by_s

Windows socket之最简单的socket程序

原文:Windows socket之最简单的socket程序 最简单的服务器的socket程序流程如下(面向连接的TCP连接 ): 1. WSAStartup(); 初始化网络库的使用. 2. socket(); 获得一个socket. 3. bind(); 把获得的socket绑定到一个ip 和端口.既然作为服务器, ip通常为本地IP127.0.0.1. 4. listen(); 监听已经绑定了指定端口的socket. 5. accept(); 接受一个来自客户端的连接. accept()返

用mac实现php开发socket,但是直接在socket——blind直接丢失,求大神解答

问题描述 用mac实现php开发socket,但是直接在socket--blind直接丢失,求大神解答 相关代码如下, $socket=socket_create(AF_INET,SOCK_STREAM,$commonProtocol) or die("cannot create socketn"); //绑定socket到端口 $result=socket_bind($socket,$host,$port) or die("cannot bind port to socke

vc socket木马-用VC编写socket木马的问题

问题描述 用VC编写socket木马的问题 下面的是某一本书上我看到的代码 服务器端代码如下: // easyDoor.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include #include #include #pragma comment (lib, "Winmm") #pragma comment (lib, "ws2_32&