17 lines
		
	
	
	
		
			274 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			17 lines
		
	
	
	
		
			274 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* $Header$ */
 | |
| char *
 | |
| memcpy(s1, s2, n)
 | |
| register char *s1, *s2;
 | |
| register int n;
 | |
| {
 | |
| /* Copy a block of data. */
 | |
| 
 | |
| 	char *ret = s1;
 | |
| 
 | |
| 	if (s2 <= s1 && s2 + (n-1) >= s1) {
 | |
| 		s1 += n; s2 += n;
 | |
| 		while (n-- > 0) *--s1 = *--s2;
 | |
| 	}
 | |
| 	else	while (n-- > 0) *s1++ = *s2++;
 | |
| 	return ret;
 | |
| }
 |