我希望取消函数 smbc_opendir()的默认输出,并仅使用printf打印。
gcc filename.c -lsmbclient
#include <libsmbclient.h>
#include <stdio.h>
void auth_fn()
{
}
int main(int argc,char* argv[])
{
int dirHandle;
if(smbc_init(auth_fn, 10)) /* Initialize things */
{
return 0;
}
dirHandle= smbc_opendir(argv[1]); /* Argument is smb://<ip-address>/ */
/* Just display value of dirHandle in output and nothing else */
printf("%d",dirHandle);
return 0;
}
答案 0 :(得分:4)
尝试调试级别0,它应仅记录严重错误:smbc_init(auth_fn, 0)
答案 1 :(得分:3)
您可以使用以下内容重定向stdout或stderr:
stderr = freopen("/dev/null", "w", stderr );
然后你调用smbc_opendir。