📄 cdate.c
字号:
# include <stdio.h>#define FLUSH fflush(stdout)main(argc,argv)int argc;char *argv[];{ int i,st; long lt; char tname[15],t[20],*ttyname(),s[25]; strcpy(tname,*ttyname(1)); if(tname[8]=='0'||tname[9]=='0')exit(0); if(argc>1){ st=atoi(argv[1]); if(st==0)st=1; } else st=1; while(1){ setnoecho(); setraw(); time(<); strcpy(t,ctime(<)); write(1,"\0337",2); write(1,"\033[7m\033[1m",8); move(0,30); i=strlen(t); gett(t,s); i=strlen(s); write(1,"\033[1m",4); write(1,"【 ",3); write(1,s,i-1); write(1," 】",3); write(1,"\033[0m",4); write(1,"\0338",2); FLUSH; setcook(); setecho(); sleep(st); }}move(x,y)int x,y;{ char buf[9]; if (x>23 || x<0 || y>79 || y<0) return(-1); sprintf(buf,"\033[%02d;%02dH",x+1,y+1); write(1,buf,8); return(0);}clear(){ write(1,"\033[2J\033[1;1H",10); return(0);}# include <termio.h># include <sys/ioctl.h># define LSET 0x80f0static struct termio arg,old;setraw(){ ioctl(0,TCGETA,&arg); old.c_lflag=arg.c_lflag; old.c_cc[4]=arg.c_cc[4]; old.c_cc[5]=arg.c_cc[5]; arg.c_lflag&=LSET; arg.c_cc[4]='\001'; arg.c_cc[5]='\001'; ioctl(0,TCSETAF,&arg);}setcook(){ arg.c_lflag=old.c_lflag; arg.c_cc[4]=old.c_cc[4]; arg.c_cc[5]=old.c_cc[5]; ioctl(0,TCSETAF,&arg);}setnoecho(){ ioctl(0,TCGETA,&arg); arg.c_lflag &= 0xfff7; ioctl(0,TCSETAF,&arg); return;}setecho(){ arg.c_lflag |= 0x08; ioctl(0,TCSETAF,&arg); return;}gett(t,s)char *t,*s;{if(strncmp("Mon",t,3)==0) sprintf(s,"星期一");if(strncmp("Tue",t,3)==0) sprintf(s,"星期二");if(strncmp("Wed",t,3)==0) sprintf(s,"星期三");if(strncmp("Thu",t,3)==0) sprintf(s,"星期四");if(strncmp("Fri",t,3)==0) sprintf(s,"星期五");if(strncmp("Sat",t,3)==0) sprintf(s,"星期六");if(strncmp("Sun",t,3)==0) sprintf(s,"星期日");if(strncmp("Jan",t+4,3)==0) strcat(s," 1月");if(strncmp("Feb",t+4,3)==0) strcat(s," 2月");if(strncmp("Mar",t+4,3)==0) strcat(s," 3月");if(strncmp("Apr",t+4,3)==0) strcat(s," 4月");if(strncmp("May",t+4,3)==0) strcat(s," 5月");if(strncmp("Jun",t+4,3)==0) strcat(s," 6月");if(strncmp("Jul",t+4,3)==0) strcat(s," 7月");if(strncmp("Aug",t+4,3)==0) strcat(s," 8月");if(strncmp("Sep",t+4,3)==0) strcat(s," 9月");if(strncmp("Oct",t+4,3)==0) strcat(s," 10月");if(strncmp("Nov",t+4,3)==0) strcat(s," 11月");if(strncmp("Dec",t+4,3)==0) strcat(s," 12月");strncat(s,t+8,2);strcat(s,"日 ");strcat(s,t+10);return(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -