界面代码
package main
import "fmt"
var userId int;
var userPwd string;
func main(){
	var key int;
	var loop=true;
	for loop {
		fmt.Println("----------------------欢迎多人聊天系统----------------------");
		fmt.Println("\t\t\t 1:登录聊天室");
		fmt.Println("\t\t\t 2:注册用户");
		fmt.Println("\t\t\t 3:退出系统");
		fmt.Println("\t\t\t 请选择(1-3):");
		fmt.Scanf("%d\n",&key);
		switch key {
			case 1:
				fmt.Println("登录聊天系统页面");
				loop=false;
			case 2:
				fmt.Println("注册用户页面");
				loop=false;
			case 3:
				fmt.Println("退出系统");
				loop=false;
			default:
				fmt.Println("你的输入有误,请重新输入");
		}
	}
	if key == 1 {
		fmt.Println("请输入用户ID:");
		fmt.Scanf("%d\n",&userId);
		fmt.Println("请输入用户密码:");
		fmt.Scanf("%s\n",&userPwd);
		login(userId,userPwd);
	}
}
2.登录页面代码
package main
import "fmt"
func login(userId int,userPwd string) (err error) {
	fmt.Printf("登录学生ID为%v 密码为%v",userId,userPwd);
	return nil;
}
3.客户端和服务端通讯协议思路

原文:https://www.cnblogs.com/zh718594493/p/14209518.html