V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Tanix2  ›  全部回复第 8 页 / 共 8 页
回复总数  152
1  2  3  4  5  6  7  8  
2022-04-23 00:07:15 +08:00
回复了 CEBBCAT 创建的主题 V2EX TIP - 如何在回复中贴代码
2022-04-23 00:00:11 +08:00
回复了 movq 创建的主题 C++ C++ for 循环终止条件里面如果写一个数组的 size,会不会优化呢?
源代码

```c++
#include <iostream>
#include <vector>
using namespace std;

int main(){
vector<int> a{1,2,3};
for(int i = 0; i < a.size(); i++){
cout << a[i] << ' ';
}
}
```

g++版本

```shell
g++ --version
g++.exe (tdm64-1) 10.3.0
```

分别用不同优化等级编译,然后反编译,循环部分如下

-O0

```c
for( i = 0; ; ++i ){
v3 = i;
if ( v3 >= std::vector<int>::size(v8) )break;
v4 = (unsigned int *)std::vector<int>::operator[](v8, i);
v5 = std::ostream::operator<<(refptr__ZSt4cout, *v4);
std::operator<<<std::char_traits<char>>(v5, 32i64);
}
```

-O1

```c
do{
v5 = ((__int64 (__fastcall *)(void *, _QWORD))std::ostream::operator<<)(
refptr__ZSt4cout,
*(unsigned int *)(v3 + 4 * v4));
v7 = 32;
std::__ostream_insert<char,std::char_traits<char>>(v5, &v7, 1i64);
v3 = v8;
++v4;
}while ( (v9 - v8) >> 2 > v4 );
```

-O2

```c
do{
v5 = (std::ostream *)std::ostream::operator<<(refptr__ZSt4cout, *(unsigned int *)(v3 + 4 * v4));
std::__ostream_insert<char,std::char_traits<char>>(v5);
v3 = v7;
++v4;
}while ( (v8 - v7) >> 2 > v4 );
```

-O3

```c
do{
v5 = (std::ostream *)std::ostream::operator<<(refptr__ZSt4cout, *v4);
std::__ostream_insert<char,std::char_traits<char>>(v5);
++v4;
}while ( v4 != v3 + 3 );
```
2022-04-09 22:41:15 +08:00
回复了 jqsl2012 创建的主题 程序员 如何把一段简单的代码变复杂?
@jqsl2012 不知道什么叫版权?
2022-04-09 14:00:49 +08:00
回复了 jqsl2012 创建的主题 程序员 如何把一段简单的代码变复杂?
@jqsl2012 你转载也不标明出处,还这么理直气壮,翻拍难道不交版权费吗
2022-04-08 18:15:07 +08:00
回复了 jqsl2012 创建的主题 程序员 如何把一段简单的代码变复杂?
别抄啦,整点原创的行不
2022-04-08 13:01:03 +08:00
回复了 ALLROBOT 创建的主题 程序员 Win 端的神器,你们都用哪些?我自用 AHK、PowerToys、ShareX 等
@LeslieLeung 好思路,这个键位舒服
2022-04-07 23:31:43 +08:00
回复了 ALLROBOT 创建的主题 程序员 Win 端的神器,你们都用哪些?我自用 AHK、PowerToys、ShareX 等
我喜欢用 AHK 将右 Alt+WSAD 映射成上下左右,方向键太难够着了
2022-04-02 09:44:43 +08:00
回复了 polobug 创建的主题 程序员 看纯英文技术文档速度慢。。你们怎么习惯的
用划词翻译,不会的单词多看几遍就会了。量变产生质变,英文看得多了就有自信。
2022-02-06 20:02:07 +08:00
回复了 cala 创建的主题 程序员 提高编程效率的方法,抛砖引玉
放轻松
2022-01-31 15:00:40 +08:00
回复了 Merlini 创建的主题 Google google 搜春节有烟花彩蛋
@VictorCheng 小时候全村聚在一块儿放烟花,年味儿是真的足,现在都不让放了,555
2022-01-04 22:01:51 +08:00
回复了 zhangjinghua 创建的主题 程序员 请教一个非常简单的 c 语言内存申请问题
@zhangjinghua 按理说没有 stdlib.h 用不了 malloc
1  2  3  4  5  6  7  8  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1280 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 28ms · UTC 17:24 · PVG 01:24 · LAX 09:24 · JFK 12:24
Developed with CodeLauncher
♥ Do have faith in what you're doing.