我在我的服务器中使用给定的Java API在AWS S3存储桶中存储一个公共对象现在我需要将S3对象的公共URL返回给我的客户端
直到现在我还没有找到任何可以返回S3对象的公共URL(或链接字段)的API调用
有没有办法获取URL?
#include <stdio.h>
int main() {
int i;
for(i=0;i<10000;i++){
printf("%d",i);
}
}
Run Code Online (Sandbox Code Playgroud)
我想使用gcc循环展开此代码,但即使使用该标志.
gcc -O2 -funroll-all-loops --save-temps unroll.c
Run Code Online (Sandbox Code Playgroud)
我得到的汇编代码包含一个10000次迭代的循环
_main:
Leh_func_begin1:
pushq %rbp
Ltmp0:
movq %rsp, %rbp
Ltmp1:
pushq %r14
pushq %rbx
Ltmp2:
xorl %ebx, %ebx
leaq L_.str(%rip), %r14
.align 4, 0x90
LBB1_1:
xorb %al, %al
movq %r14, %rdi
movl %ebx, %esi
callq _printf
incl %ebx
cmpl $10000, %ebx
jne LBB1_1
popq %rbx
popq %r14
popq %rbp
ret
Leh_func_end1:
Run Code Online (Sandbox Code Playgroud)
可以somone plz告诉我如何在gcc中正确实现循环展开
对于像int这样的基本数据类型,代码片段会出现编译错误
i++ = 2;
Run Code Online (Sandbox Code Playgroud)
所以显然i++不是左值
但是当用c ++重载自定义类时,大多数人都认为post增量运算符的签名应该是这样的
Date Date::operator++(int) {
Date temp = *this;
// do increment
return temp;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是为什么不应该返回类型const Date而不是Date原始类型.
class A {
public:
static int i;
static int inc();
};
int A::inc() {
i++;
return i;
}
int main() {
A::inc();
}
Run Code Online (Sandbox Code Playgroud)
我们知道我们可以从静态方法访问静态成员变量.但是这段代码给了我一个错误
"A::i", referenced from:
A::inc() in ccn8PKhC.o
ld: symbol(s) not found for architecture x86_64
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我,我错过了什么