如何在Zig

问题描述 投票:0回答:2

搜索时的大多数解决方案返回

std.os.socket
,但是
os
软件包不再定义套接字方法。

const std = @import("std"); pub fn main() !void { const addr = try std.net.Address.parseIp("127.0.0.1", 8080); const sock_fd = try std.os.socket(std.os.AF.INET, std.os.SOCK.DGRAM, std.os.IPPROTO.UDP); defer std.os.close(sock_fd); try std.os.bind(sock_fd, &addr.any, addr.getOsSockLen()); var buf: [1024]u8 = undefined; const len = try std.os.recv(sock, &buf, 0); std.debug.print("{s}\n", .{buf[0..len]}); }
    
udp zig
2个回答
0
投票
i在

Ziggit上找到了答案,在此处将其张贴在此处以获得更好的联系。 thank you thank youdimdim用于解决方案。

const std = @import("std"); pub fn main() !void { const sock = try std.posix.socket(std.posix.AF.INET, std.posix.SOCK.DGRAM, std.posix.IPPROTO.UDP); defer std.posix.close(sock); const addr = try std.net.Address.parseIp("127.0.0.1", 55555); try std.posix.bind(sock, &addr.any, addr.getOsSockLen()); var buf: [1024]u8 = undefined; const len = try std.posix.recvfrom(sock, &buf, 0, null, null); std.debug.print("recv: {s}\n", .{buf[0..len]}); }

pub fn main()!void { const addr = try std.net.address.parseip(“ 127.0.0.1”,8080); const sock_fd = try std.os.socket(std.os.af.inet,std.os.sock.dgram,std.os.ipproto.udp); defer std.os.close(sock_fd);
try std.os.bind(sock_fd, &addr.any, addr.getOsSockLen());

var buf: [1024]u8 = undefined;
const len = try std.os.recv(sock, &buf, 0);
std.debug.print("{s}\n", .{buf[0..len]});

-1
投票
}


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.