关于爆栈问题——手动加栈

今天忽然遇见了一行很牛逼的代码:#pragma comment(linker, “/STACK:1024000000,1024000000”)
据说是手动加栈的,作为小白的我自然是只好各种查资料。

然后牵扯到了很多基础概念,C、C++、GCC、G++、把我搞得晕头转向,都分不清谁是谁了。
经查阅资料:
G++和C++都是C++语言的编译器,二者基本相同。
而GCC和C都是C语言编译器,而这差别实际也不大。
尽管C++规范中兼容绝大部分C的用法和几乎全部函数,但毕竟还是有更改的地方。

ACM模版

解决爆栈,手动加栈

这个关系一下子真的有些分不清你你我我,但是可以肯定的是当我们用C++时,可以用上边的这句代码进行手动加栈。(#pragma comment(linker, “/STACK:1024000000,1024000000”))

而C时,我们则要说另外一句代码:#pragma GCC optimize (“O2”)
我想,对于这个02你应该会有一丝的警觉,02表示一种状态,那么是不是还有其他的状态呢?
对,这个真有。GCC的#pragma优化主要分为四种 -O0 -O1 -O2 -O3
-O0 表示无优化状态
-O1 表示对代码进行了优化
-O2 表示减小目标文件大小
-O3 表示减小代码段及栈空间的大小

对部分代码可以去除优化:
#pragma GCC push_options
#pragma GCC optimize (“O0”)

或者也可以增加优化
#pragma GCC pop_options

另外要说的是,想要对代码进行进一步的优化,可以使用输入加速外挂,对C、C++均可行。

全部评论

相关推荐

点赞 评论 收藏
分享
昨天 18:27
已编辑
门头沟学院 C++
26学院本太难了,很多公司机筛就给我刷了。机会都难拿到如果是简历存在问题也欢迎拷打————————————————————分割线——————————————————————2026.3.4更新:发完贴之后,时不时投递又收到了不少的笔试/面试邀请。主要是之前投递简历出去之后基本上都是沉默状态,年后好转了不少timeline:2026.01.21 文远知行笔试,半年多没刷算法题 ->挂 (后续HR说春招可以重新安排笔试)2026.2.4     小鹏汇天 技术一面,第二周收到结果 ->挂2026.2.12   大众Cariad代招 技术二面 ->Offer2026.2.28   多益网络技术面试,由于风评太差,一直在犹豫要不要接面试 ->推迟-----------分割线-----------2026.3 月前的某一天,临时去电网报名了二批计算机岗位的笔试2026.3.6 从上家公司实习离职,氛围最好的一家公司,leader 说可以帮忙转正,但是流程太长,而且我们部门据说只有一个 hc,更想要研究生,我很有可能是会被签外包公司在这里干活,就离职了。2026.3.9 入职新公司,大众Cariad 以外部公司的身份进组,项目组签了三年,后续三年应该都可以在这里呆,不知道有没有希望原地跳槽。2026.3.10 电网考试居然说我通过资格审查了,短信约我去参加资格审查,请假一天,买了 12 号晚上的机票回成都2026.3.15 参加国家电网三新计算机类的笔试2026.3.17 电网出成绩了,感觉很低。觉得已经🈚️了2026.3.18 收到电网面试通知,通知 3.22-3.25 这个时间去面试,我的岗位只招 1 个人。据说面试只有 2-3 人,不知道能不能成功
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务