June 4th Thursday (六月 四日 木曜日)

本文介绍了一个C语言程序,该程序能够显示传递给程序的参数、环境变量及辅助向量信息。辅助向量提供了关于程序运行环境的详细信息,如内核版本等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 The program can show auxiliary vectors hidden after environment and arguments.

//showall.c
#include <stdio.h>
#include <elf.h>

int main(int argc, char* argv[]) {
  int *p= (int*) argv;
  int i;
  Elf32_auxv_t* aux;

  printf("Argument count: %d/n", *(p-1));

  for (i = 0; i < *(p-1); ++i) {
    printf("Argument %d: %s/n", i, *(p+1));
  }
  p += i;
  p++;  // skip 0

  printf("Environment:/n");
  while(*p) {
    printf("%s/n", *p);
    p++;
  }

  p++;

  printf("Auxiliary Vectors: /n");
  aux = (Elf32_auxv_t*)p;
  while(aux->a_type != AT_NULL) {
    printf("Type: %02d Value: %x/n", aux->a_type, aux->a_un.a_val);
    aux++;
  }

  return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值