簡體   English   中英

在 Zig 中循環整數范圍

[英]Looping over an integer range in Zig

像這樣的while循環是在Zig中循環整數范圍的慣用方式嗎?

var i: i32 = 5;
while (i<10): (i+=1) {
    std.debug.print("{}\n", .{i});
}

我首先嘗試了類似python

for (5..10) |i| {
    // ....

但這不起作用。

zig 沒有整數范圍循環的概念,但是nektro有一個 hack,它創建了一個隨機[]void切片,因此您可以使用for循環進行迭代

const std = @import("std");

fn range(len: usize) []const void {
    return @as([*]void, undefined)[0..len];
}

for (range(10)) |_, i| {
    std.debug.print("{d}\n", .{i});
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM