提交记录 31228
| 提交时间 |
评测时间 |
| 2026-08-13 15:40:46 |
2026-08-13 15:40:47 |
int plus(int a, int b) { return a + b; }
typedef unsigned long U;
static char **initial_argv;
static U initial_argc;
struct DuckInfo_t {
uint64_t abi_version;
const char *stdin_ptr; // stdin pointer (read-only contents)
uint64_t stdin_size; // stdin size
char *stdout_ptr; // stdout pointer
uint64_t stdout_limit; // [IN] stdout maximum size
uint64_t stdout_size; // [OUT] stdout actual size
char *stderr_ptr; // stderr pointer
uint64_t stderr_limit; // [IN] stderr maximum size
uint64_t stderr_size; // [OUT] stderr actual size
const char *IB_ptr; // IB (Input Buffer) pointer
uint64_t IB_limit; // IB limit
char *OB_ptr; // OB (Output Buffer) pointer
uint64_t OB_limit; // OB limit
uint64_t tsc_frequency; // TSC (Time Stamp Counter) frequency
} __attribute__((packed));
U getauxval(U key) {
char **p = initial_argv + initial_argc + 1;
while (*p) ++p;
U *aux = (U *)(p + 1);
while (aux[0]) {
if (aux[0] == key) return aux[1];
aux += 2;
}
return 0;
}
__attribute__((noreturn))
void __libc_start_main(int (*entry)(int, char **, char **), int argc, char **argv) {
initial_argc = (U)argc;
initial_argv = argv;
((DuckInfo_t*)getauxval(0x6b637564))->tsc_frequency = 10000;
entry(0, argv, (char **)0);
__asm__ volatile("mov $60,%%eax;xor %%edi,%%edi;syscall"
::: "rax", "rdi", "rcx", "r11", "memory");
__builtin_unreachable();
}
| Compilation | N/A | N/A | Compile Error | Score: N/A | 显示更多 |
Judge Duck Online | 评测鸭在线
Server Time: 2026-09-12 09:50:48 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠