# | User | Rating |
---|---|---|
1 | tourist | 3985 |
2 | jiangly | 3814 |
3 | jqdai0815 | 3682 |
4 | Benq | 3529 |
5 | orzdevinwang | 3526 |
6 | ksun48 | 3517 |
7 | Radewoosh | 3410 |
8 | hos.lyric | 3399 |
9 | ecnerwala | 3392 |
9 | Um_nik | 3392 |
# | User | Contrib. |
---|---|---|
1 | cry | 169 |
2 | maomao90 | 162 |
2 | Um_nik | 162 |
4 | atcoder_official | 161 |
5 | djm03178 | 158 |
6 | -is-this-fft- | 157 |
7 | adamant | 155 |
8 | awoo | 154 |
8 | Dominater069 | 154 |
10 | luogu_official | 151 |
Name |
---|
Just write this on top of code
UPD: It does not even work on windows MSVC.
Doesn't work with all operating systems, and only with MSVC I believe. Here are some other alternatives.
Does it work with Ubuntu 22.04?
No
Not sure if it'll be helpful to people, but I have the following function in my
~/.bashrc
on Mac (should also work on Linux): https://pastebin.com/VV6DCjhxUsage is
cpprun code.cpp
and you can optionally append<file.in
and/or>file.out
for I/O. This will build and run code.cpp, and show the execution time and exit code. It's convenient to me because it's just one line.You may have to tweak the line with the g++ build flags. In particular, the flags
-Wl,-stack_size -Wl,20000000
is what I've found to work most consistently on Mac for increasing stack limit.I used the template but got the following:
What could be the possible reason for this?
Do you have a 32 bit machine or 64 bit machine? From the small amount of assembly I remember, I have a feeling this might be an issue. Maybe using esp instead of rsp can help.
I have a 64 bit machine but maybe 32bit MinGW is installed, never bothered before...
Could you please share or let me know any tutorial for 64bit cpp installation? Would be really helpful...
UPD: Worked after using 'esp' in place of 'rsp'... , Thanks
Why and How does this works?
It allocates a stack and manually changes the stack pointer before and after the function call.
ok now I know why my solution crashed in my computer during hacker cup 2021 but later it worked on other people's computers , thanks
I just use this while compiling c++ file in windows:
g++ "-Wl,--stack,1078749825" file_name.cpp -o output
Does it work with the
,
instead of=
? Seems a bit different from what I know.This works with Windows 11.
Thanks a ton!
not working in codeblocks
I really need it, a program won't run because I have an array that's way too big. Any idea what I could do, and do it fast?
Try declaring array globally. It might work
yea getting it out of the struct worked
What is the error message? It should not be an issue with an IDE, but with the OS/architecture of your machine/target of compiler. If it is Windows and your compiler is 32 bit instead of 64 bit, you can try using esp instead of rsp. If you're using a machine with an ARM chip, this won't work.
it wasn't an error message. Here is more context:
I had a class containing a vector of a struct with 2 ints and a double of size 1e6. Although it did compile, it immediately crashed when I tried to run it. When I tried to catch where it crashed with F8 (a shortcut in CodeBlocks) it didn't catch anything and just failed, leaving me to wonder wtf is causing it. When I took everything out of the class, it all ran fine.
I don't know what esp, rsp or an ARM chip are. I'll try to read up on it lol
Here is what I got when I tried to run the code you provided here, sorry but I have no idea what to make of these errors lmao https://ibb.co/CMw2twK
The struct should not have been an issue. The screenshot looks like a compilation error, seems like the error is in the debug build instead.
One thing you can try is find and replace "rsp" in the code above by "esp" — if your execution crashed due to architecture issues (32 bit vs 64 bit), then it should most likely be fixed by this change.
that didn't work, similar errors
hey nor I did what u said but it is not woriking , can u please help . The input is working but the output file is not showing after test case 46
*** ( ok , now it is woriking for run_with_stack_size( solve , 512 * 512 * 512 ) nut not for run_with_stack_size( solve , 1024 * 1024 * 1024) . Will it be enough for contest in hacker cup ?? ) ***
anyone ?
The function allocates a very large buffer. If you do that for every test case, you will most likely get TLE.
The way to use the template is to write your main function in a separate function (not your solve function), and call that function via the stack size function only once in
main
and do nothing else.Hey, I am using macOS and while setting up with the reference of blog I have used the function mentioned and it looks like:
And I am facing error:
Any help would be appreciated!
Have you fixed it i have same issue
Above link is not working --> Check this Click Here