我们先不管write函数的实现,首先来看vsprint。...vsprintf(char *buf, const char *fmt, va_list args)
2 {
3 int len;
4 int i;
5 char * str;
6 char *s;
7 int *ip...va_arg(args, unsigned long), 10,
122 field_width, precision, flags);
123 break;
124
125 case 'n':
126 ip...= va_arg(args, int *);
127 *ip = (str - buf);
128 break;
129
130 default:
131 if (*fmt !...分析同上
而write函数跟fork函数一样是由_syscall*来实现的,内嵌汇编就不多解释了,直接展开就行
write.c
_syscall3(int,write,int,fd,const char