Algorithmen und Datenstrukturen in Chome Algorithmen und Datenstrukturen in C: Typlose Zeiger Prof. Dr. Uwe Schmidt FH Wedel

Typlose Zeiger

weiter

weiter

void-Zeiger für generische Funktionen
Beispiel: memcpy.c

   1#include <stddef.h>
   2
   3void *
   4memcpy1 (void *dvoid *ssize_t n)
   5{
   6  char *d1 = d;
   7  char *s1 = s;
   8
   9  while (n--)
  10    *d1++ = *s1++;
  11
  12  return d;
  13}
weiter

weiter

Übersetzen

cc -Wall -O -S memcpy.c

weiter

weiter

Der Assembler-Code: memcpy.s

1 memcpy1:
2 testq %rdx, %rdx
3 je .L2
4 movl $0, %ecx
5 .L3:
6 movzbl (%rsi,%rcx), %eax
7 movb %al, (%rdi,%rcx)
8 addq $1, %rcx
9 cmpq %rdx, %rcx
10 jne .L3
11 .L2:
12 movq %rdi, %rax
13 ret
weiter

weiter

man pages

man memcpy


man memmove


weiter

Letzte Änderung: 09.11.2009
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel