#include <netlink/socket.h>
#include <netlink/netlink.h>
struct nl_sock *sock;
sock = nl_socket_alloc();
以上代码始终无法编译,并出现以下错误: /home/micah/Documents/C++/Socket_fun/Socket_fun/src/main.cpp|5|error:'sock'没有命名类型
我从libnl示例中得到了这个,因为它不起作用,我想知道,这样做的正确方法是什么?
答案 0 :(得分:3)
该代码必须在函数中,您不能只是在函数的上下文之外调用函数:
int main()
{
struct nl_sock *sock;
sock = nl_socket_alloc();
}
另外,你在编译什么?我建议将其编译为C,而不是C ++。