Create a wrapper around larger c-libraries

user1234 user1234 at 12.de
Sun Apr 24 16:16:22 UTC 2022


On Sunday, 24 April 2022 at 15:13:15 UTC, Alain De Vos wrote:
> I'm currenlty experimenting about binding to C.
> I have :
> C-library:
>
> mylib.h:
> ```
> void libprintme(char *s);
> ```
>
> mylib.c:
> ```
> #include <stdio.h>
> #include "mylib.h"
> void libprintme(char *s){printf("%s",s);}
> ```
>
> [...]
>
>
> Can this procedure be used for larger C-libraries ?
> What is good , what is bad , what can be better. Feel free to 
> elaborate ?
>
> (It's the C-preprocessor with macro expansion which gives me 
> sometimes a bit of a headache.)

Why not just

```d
extern(C) @nogc nothrow {
     void libprintme(char *s);
     alias cprintme = libprintme;
}
```

?

The function pointer looks totally superfluous to me.


More information about the Digitalmars-d-learn mailing list