4,436
社区成员
发帖
与我相关
我的任务
分享
#include<asm/segment.h>
#include<string.h>
#include<errno.h>
char username[24]="";
int sys_iam(const char *name)
{
int n=0, i;
char temp[32];
for(i=0;i<32;i++)
{
temp[i]=get_fs_byte(&name[i]);
if(temp[i]!='\0')
n++;
else
break;
}
if(n<24)
strcpy(username, temp);
else
{
n=-1;
errno=EINVAL;
}
return n;
}
int sys_whoami(char *name, unsigned int size)
{
int n=0, i;
for(i=0;i<size;i++)
{
put_fs_byte(username[i], &name[i]);
if(username[i]!='\0')
n++;
else
break;
}
if(username[n]!='\0')
{
n=-1;
errno=EINVAL;
}
return n;
}