Chinaunix
标题:
scanf fgets C库分割界面 聊天室
[打印本页]
作者:
恰巧来上
时间:
2012-08-22 21:23
标题:
scanf fgets C库分割界面 聊天室
1.我已经用线程做好了,几天刚上CSDN,才来回复,请教另一个问题:
例子:
int i;
char buffer[array_size];
char send_buffer[array_size];
printf( "please input i \n" );
scanf( "%d", &i );
printf( "please input the information you want to send:\n" );
scanf( "%s", buffer );
//fgets( buffer, array_size, stdin );
//格式化处理
sprintf( send_buff, "%d:%s", i, buffer );
我的目的是输入一个整型i, 和一串字符串(可能带空格), 然后格式化到 send_buffer 数组里面。
如果使用scanf输入,因为他不能接收空格,所以第一个空格后面的字符串会全部跳过,不能格式化到数组里。
如果用fgets, 在上面已经输入完i以后,空格貌似会送给fgets,直接跳过,不接收输入。
这样的问题我应该怎么解决?几天一直没办法解决。
2. C当中有没有库可以做滚屏的?分割屏幕的库?curses可以? 我想把聊天室分上下屏幕,做成上面是在线用户列表,下面是聊天记录,互不影响。
请指教。。
作者:
longzmkm
时间:
2012-08-23 19:37
int main(){
int i;
char buffer[100];
char send_buffer[1000];
printf("please input i\n");
scanf("%d",&i);
getchar();
printf("pleadse input the information you want to send\n");
fgets(buffer,sizeof(buffer),stdin);
// getchar();
printf("%d\n",i);
sprintf(send_buffer,"%d,%s",i,buffer);
printf("output:%s",send_buffer);
}
作者:
longzmkm
时间:
2012-08-23 19:50
你可以做个 输入 who? 的命令 当用户输入这个东西的时候 server 会给用户发送当前在线用户的 列表 并且打印出来
在server 端 你可以 用 strcmp(send_buffer,"who?",4) 当这个成立的时候 你就可以把在线的 用户 发给 客户端 然后客户端 打印出来就好了
作者:
快乐古月
时间:
2014-07-23 09:12
膜拜:wink::wink::wink:
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2