The handy commmand to do so is popen()
Code:
FILE *cmdout = popen("find '/dev/dvb/adapter*/frontend*' -print0");
/* use getdelim() to parse out the filenames reliably */
pclose(cmdout);
I generally prefer using a pure-C approach, because if you need to use system() or popen(), you might as well use Bash or POSIX sh. Why can't it stay Bash?