学习笔记6 截图+代码

一、苏格拉底挑战










二、遇见的问题


三、实践和代码


#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main() {
    char *programPath = "/path/to/your/program";  // 指定要执行的程序的路  径
    char *const argv[] = {programPath, NULL};     // 参数列表,以 NULL 结尾
    char *const envp[] = {NULL};                  // 环境变量,通常为NULL表示继承当前环境

    // 使用 execve() 执行新程序
    if (execve(programPath, argv, envp) == -1) {
        perror("execve"); // 如果 execve() 失败,输出错误信息
        exit(EXIT_FAILURE);
    }

    // 这里的代码不会执行,因为 execve() 成功时会替换当前进程
    printf("This line won't be reached.\n");

    return 0;
}
posted @ 2023-10-19 21:06  20211423袁艺  阅读(3)  评论(0编辑  收藏  举报