Q:

How to pass options into the mount system call?

I want to mount 100 MB tmpfs within a C program in Linux. 
How can pass pass mount's options (i.e. -o size=100M,mode=0755) to the mount syscall?
It is the mount interface for C:
#include <sys/mount.h>

int mount(const char *source, const char *target,
            const char *filesystemtype, unsigned long mountflags,
            const void *data);

A:

Reading mount(2) man-page, it seems that filesystem independent options are given in mountflags as combination of different flags, and other filesystem specific options in data as comma-separated string exactly as they are used in mount(8).
So in your case just pass those options as string:
const char *data = "size=100M,mode=0755";
...
mount(source, target, filesystemtype, mountflags, data);

