Request Short Link
C++ 98
C++ 11
C++ 14
C++ 17
C++ 20
C++ 23
C++ 2c
for-loops as while-loops
array subscription
Show all implicit casts
Show all template parameters of a CallExpr
Use libc++
Transform std::initializer_list
Show noexcept internals
Show padding information
Show coroutine transformation
Show C++ to C transformation
Show object lifetime
Default
15
18
20
22
26
More
GitHub
Patreon
Issues
About
Policies
Examples
C++ Insights @ YouTube
Settings
Version
New C++ Insights Episode
×
Made by
Andreas Fertig
Powered by
Flask
and
CodeMirror
Source:
#include <iostream> #include <array> template<int v> consteval std::array<int, v + 1> sieve() { std::array<int, v + 1> arr = {}; for(long long i = 2; i <= v; i++) { if(arr[i]) { continue; } for(long long j = i * i; j <= v; j+= i) { arr[j] = 1; } } return arr; } int main() { auto sieve_array = sieve<12345>(); std::cout << 7 << " : " << sieve_array[7] << std::endl; std::cout << 2000 << " : " << sieve_array[2000]<< std::endl; std::cout << 2003 << " : " << sieve_array[2003]<< std::endl; size_t i = 0; std::cin >> i; std::cout << sieve_array[i] << std::endl; return 0; }
Insight:
Console: