當前位置:首頁 » 編程語言 » c語言getenv
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言getenv

發布時間: 2022-10-17 02:02:13

c語言怎麼獲得linux的home目錄

可以利用getenv函數來實現。
在Linux系統中,home目錄的定義是通過系統環境變數中的HOME變數值來確定的,在shell下可以通過
echo
$HOME來查看。
而在C語言中,庫函數getenv可以用作獲取環境變數值。該函數位於stdlib.h,
原型為
char
*getenv(char
*name);
功能為獲取名字為name的環境變數字元串。
所以,下面代碼就可以獲取到home目錄名了:
char *home;
home = getenv("HOME");
printf("the home path is %s\n", home);

❷ 如何設置C語言里的環境變數

C語言編譯器本身需要環境變數支持,比如配置編譯器可執行文件所在路徑需要設置path環境變數等。

這時可以通過在命令行中調用操作系統對應設置環境變數的命令,實現設置。

a. 在windows/dos下,設置命令為set, 引用變數為%變數名%,於是設置path的可以寫作set path=xxxx;%path%,這樣就在path變數中增加了xxxx路徑。

在C語言運行中,需要設置環境變數。這時可以使用system函數,調用系統命令來實現。

system("set my_env=env_string");

是在windows下增加一個my_env的環境變數,值為env_string。

而在linux下,該設置寫作

system("export my_env=env_string");

(2)c語言getenv擴展閱讀:

C語言中環境變數操作

getenv(取得環境變數內容)

相關函數 putenv,setenv,unsetenv

putenv(改變或增加環境變數)

setenv(改變或增加環境變數)
對環境變數操作

#include<stdlib.h>

main()

{

char * p;

if((p=getenv(「USER」)))

printf(「USER =%s 」,p);

setenv(「USER」,」test」,1);

printf(「USER=%s 」,getenv(「USEr」));

unsetenv(「USER」);

printf(「USER=%s 」,getenv(「USER」));

}

❸ 如何用C語言獲取目錄下的文件和目錄列表

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

void main()
{
system("DIR /D C:\\ /s /B > a.log");
}

C:\下的所有文件夾,子文件夾里所有文件,轉向到 文本文件 a.log 里。
格式:
C:\aaa\bbb\ccc\...

只要文件夾命令:
dir /d c: /B /ad
只要文件夾命令,含子文件夾:
dir /d c: /B /ad /s

❹ c語言怎麼獲得linux的home目錄

可以利用getenv函數來實現。
在Linux系統中,home目錄的定義是通過系統環境變數中的HOME變數值來確定的,在shell下可以通過
echo $HOME來查看。
而在C語言中,庫函數getenv可以用作獲取環境變數值。該函數位於stdlib.h, 原型為
char *getenv(char *name);
功能為獲取名字為name的環境變數字元串。
所以,下面代碼就可以獲取到home目錄名了:
char *home;
home = getenv("HOME");
printf("the home path is %s\n", home);

❺ C語言CGI getenv("CONTENT_LENGTH"); 指向NULL

指向NULL 表示沒有取到環境值。
------------------------------
已經設置了的環境變數,才能用程序getenv取得。
取來的內容存起來用,例如:
char ev[200];
strcpy(ev,getenv("HOMEPATH"));
//過一段時間和做一些事情後信息還保留著
printf("%s",ev);

❻ getenv在shell腳本中怎麼用

getenv是一個C語言的系統庫函數,定義在頭文件<stdlib.h>,在C編程時使用的,

輸入參數為一個字元串,環境變數,返回的是環境變數的值,或者NULL(環境變數不存在的時候)

如果在shell腳本中想要獲取當前的環境變數,則應該使用命令 env,可以列出當前的環境變數

得到形式如下面的輸出:

❼ c語言中,頭文件stdlib.h主要包含什麼函數

包含的函數編輯

輸入樣式:C語言模式:#include <stdlib.h>

C++樣式:#include <cstdlib>

1、函數名稱:calloc

函數原型: void calloc(unsigned n,unsigned size);

函數功能: 分配n個數據項的內存連續空間,每個數據項的大小為 size

函數返回: 分配內存單元的起始地址,如果不成功,返回0

2、函數名稱:free

函數原型: void free(void* p);

函數功能: 釋放 p 所指的內存區

函數返回:

參數說明: p- 被釋放的指針

3、函數名稱:malloc

函數原型: void * malloc(unsigned size);

函數功能: 分配 size 位元組的存儲

函數返回: 所分配的內存區地址,如果內存不夠,返回0

4、函數名稱: realloc

函數原型: void * realloc(void * p,unsigned size);

函數功能: 將 p 所指出的已分配內存區的大小改為 size,size 可以比原來分配的空間大或小

函數返回: 返回指向該內存區的指針.NULL-分配失敗

5、函數名稱: rand

函數原型: int rand(void);

函數功能: 產生0到32767間的隨機整數(0到0x7fff之間)

函數返回: 隨機整數

6、函數名稱: abort

函數原型: void abort(void)

函數功能: 異常終止一個進程.

7、函數名稱: exit

函數原型: void exit(int state)

函數功能: 程序中止執行,返回調用過程

函數返回:

參數說明: state:0- 正常中止,非 0- 非正常中止

8、函數名稱: getenv

函數原型: char* getenv(const char *name)

函數功能: 返回一個指向環境變數的指針

函數返回:環境變數的定義

參數說明: name- 環境字元串

9、函數名稱: putenv

函數原型: int putenv(const char *name)

函數功能: 將字元串name增加到DOS環境變數中

函數返回: 0:操作成功,-1:操作失敗

參數說明: name-環境字元串

10、函數名稱: labs

函數原型: long labs(long num)

函數功能: 求長整型參數的絕對值

函數返回:絕對值

11、函數名稱: atof

函數原型: double atof(char *str)

函數功能: 將字元串轉換成一個雙精度數值

函數返回: 轉換後的數值

參數說明: str- 待轉換浮點型數的字元串

12、函數名稱: atoi

函數原型: int atoi(char *str)

函數功能: 將字元串轉換成一個整數值

函數返回: 轉換後的數值

參數說明: str- 待轉換為整型數的字元串

13、函數名稱: atol

函數原型: long atol(char *str)

函數功能: 將字元串轉換成一個長整數

函數返回: 轉換後的數值

參數說明: str- 待轉換為長整型的字元串

14、函數名稱:ecvt

函數原型: char *ecvt(double value,int ndigit,int *dec,int *sign)

函數功能: 將浮點數轉換為字元串

函數返回: 轉換後的字元串指針

參數說明: value- 待轉換底浮點數,ndigit- 轉換後的字元串長度

15、函數名稱:fcvt

函數原型: char *fcvt(double value,int ndigit,int *dec,int *sign)

函數功能: 將浮點數變成一個字元串

函數返回: 轉換後字元串指針

參數說明: value- 待轉換底浮點數,ndigit- 轉換後底字元串長度

❽ C語言頭文件有哪些

字元處理函數
本類別函數用於對單個字元進行處理,包括字元的類別測試和字元的大小寫轉換

頭文件 ctype.h

函數列表<>
函數類別 函數用途 詳細說明
字元測試 是否字母和數字 isalnum
是否字母 isalpha
是否控制字元 iscntrl
是否數字 isdigit
是否可顯示字元(除空格外) isgraph
是否可顯示字元(包括空格) isprint
是否既不是空格,又不是字母和數字的可顯示字元 ispunct
是否空格 isspace
是否大寫字母 isupper
是否16進制數字(0-9,A-F)字元 isxdigit
字元大小寫轉換函數 轉換為大寫字母 toupper
轉換為小寫字母 tolower

地區化
本類別的函數用於處理不同國家的語言差異。

頭文件 local.h

函數列表
函數類別 函數用途 詳細說明
地區控制 地區設置 setlocale
數字格式約定查詢 國家的貨幣、日期、時間等的格式轉換 localeconv

數學函數
本分類給出了各種數學計算函數,必須提醒的是ANSI C標准中的數據格式並不符合IEEE754標准,一些C語言編譯器卻遵循IEEE754(例如frinklin C51)

頭文件 math.h

函數列表
函數類別 函數用途 詳細說明
錯誤條件處理 定義域錯誤(函數的輸入參數值不在規定的范圍內)
值域錯誤(函數的返回值不在規定的范圍內)
三角函數 反餘弦 acos
反正弦 asin
反正切 atan
反正切2 atan2
餘弦 cos
正弦 sin
正切 tan
雙曲函數 雙曲餘弦 cosh
雙曲正弦 sinh
雙曲正切 tanh
指數和對數 指數函數 exp
指數分解函數 frexp
乘積指數函數 fdexp
自然對數 log
以10為底的對數 log10
浮點數分解函數 modf
冪函數 冪函數 pow
平方根函數 sqrt
整數截斷,絕對值和求余數函數 求下限接近整數 ceil
絕對值 fabs
求上限接近整數 floor
求余數 fmod

本分類函數用於實現在不同底函數之間直接跳轉代碼。 頭文件 setjmp.h io.h

函數列表
函數類別 函數用途 詳細說明
保存調用環境 setjmp
恢復調用環境 longjmp

信號處理
該分類函數用於處理那些在程序執行過程中發生例外的情況。

頭文件 signal.h

函數列表
函數類別 函數用途 詳細說明
指定信號處理函數 signal
發送信號 raise

可變參數處理
本類函數用於實現諸如printf,scanf等參數數量可變底函數。

頭文件 stdarg.h

函數列表
函數類別 函數用途 詳細說明
可變參數訪問宏 可變參數開始宏 va_start
可變參數結束宏 va_end
可變參數訪問宏 訪問下一個可變參數宏 va_arg

輸入輸出函數
該分類用於處理包括文件、控制台等各種輸入輸出設備,各種函數以「流」的方式實現

頭文件 stdio.h

函數列表
函數類別 函數用途 詳細說明
文件操作
刪除文件 remove
修改文件名稱 rename
生成臨時文件名稱 tmpfile
得到臨時文件路徑 tmpnam
文件訪問 關閉文件 fclose
刷新緩沖區 fflush
打開文件 fopen
將已存在的流指針和新文件連接 freopen
設置磁碟緩沖區 setbuf
設置磁碟緩沖區 setvbuf
格式化輸入與輸出函數 格式輸出 fprintf
格式輸入 fscanf
格式輸出(控制台) printf
格式輸入(控制台) scanf
格式輸出到緩沖區 sprintf
從緩沖區中按格式輸入 sscanf
格式化輸出 vfprintf
格式化輸出 vprintf
格式化輸出 vsprintf
字元輸入輸出函數 輸入一個字元 fgetc
字元串輸入 fgets
字元輸出 fputc
字元串輸出 fputs
字元輸入(控制台) getc
字元輸入(控制台) getchar
字元串輸入(控制台) gets
字元輸出(控制台) putc
字元輸出(控制台) putchar
字元串輸出(控制台) puts
字元輸出到流的頭部 ungetc
直接輸入輸出 直接流讀操作 fread
直接流寫操作 fwrite
文件定位函數 得到文件位置 fgetpos
文件位置移動 fseek
文件位置設置 fsetpos
得到文件位置 ftell
文件位置復零位 remind
錯誤處理函數 錯誤清除 clearerr
文件結尾判斷 feof
文件錯誤檢測 ferror
得到錯誤提示字元串 perror

實用工具函數
本分類給出了一些函數無法按以上分類,但又是編程所必須要的。

頭文件 stdlib.h

函數列表
函數類別 函數用途 詳細說明
字元串轉換函數 字元串轉換為整數 atoi
字元串轉換為長整數 atol
字元串轉換為浮點數 strtod
字元串轉換為長整數 strtol
字元串轉換為無符號長整型 strtoul
偽隨機序列產生函數 產生隨機數 rand
設置隨機函數的起動數值 srand
存儲管理函數 分配存儲器 calloc
釋放存儲器 free
存儲器分配 malloc
重新分配存儲器 realloc
環境通信 中止程序 abort
退出程序執行,並清除環境變數 atexit
退出程序執行 exit
讀取環境參數 getenv
程序掛起,臨時執行一個其他程序 system
搜索和排序工具 二分查找(數據必須已排序) bsearch
快速排序 qsort
整數運算函數 求絕對值 abs
div
得到除法運算底商和余數
求長整形底絕對值 labs
求長整形除法的商和余數 ldiv
多位元組字元函數 得到多位元組字元的位元組數 mblen
得到多位元組字元的位元組數 mbtowc
多位元組字元轉換 wctomb
多位元組字元的字元串操作 將多位元組串轉換為整數數組 mbstowcs
將多位元組串轉換為字元數組 mcstowbs

字元串處理
本分類的函數用於對字元串進行合並、比較等操作

頭文件 string.h

函數列表
函數類別 函數用途 詳細說明
字元串拷貝 塊拷貝(目的和源存儲區不可重疊) memcpy
塊拷貝(目的和源存儲區可重疊) memmove
串拷貝 strcpy
按長度的串拷貝 strncpy
字元串連接函數 串連接 strcat
按長度連接字元串 strncat
串比較函數 塊比較 memcmp
字元串比較 strcmp
字元串比較(用於非英文字元) strcoll
按長度對字元串比較 strncmp
字元串轉換 strxfrm
字元與字元串查找 字元查找 memchr
字元查找 strchr
字元串查找 strcspn
字元串查找 strpbrk
字元串查找 strspn
字元串查找 strstr
字元串分解 strtok
雜類函數 字元串設置 memset
錯誤字元串映射 strerror
求字元串長度 strlen

日期和時間函數
本類別給出時間和日期處理函數

頭文件 time.h

函數列表
函數類別 函數用途 詳細說明
時間操作函數 得到處理器時間 clock
得到時間差 difftime
設置時間 mktime
得到時間 time
時間轉換函數 得到以ASCII碼表示的時間 asctime
得到字元串表示的時間 ctime
得到指定格式的時間 strftime

函數庫未來的發展方向
本部分用於說明各類別函數庫在將來如何發展。

序號 庫類別 頭文件 詳細說明
1 錯誤處理 errno.h
2 字元處理 ctype.h
3 地區化 local.h
4 數學函數 math.h
5 信號處理 signal.h
6 輸入輸出 stdio.h
7 實用工具程序 stdlib.h
8 字元串處理 string.h

❾ getenv("CONTENT_LENGTH") 放的是什麼

http://tools.ietf.org/html/rfc2616#section-14.13

14.13 Content-Length

The Content-Length entity-header field indicates the size of the
entity-body, in decimal number of OCTETs, sent to the recipient or,
in the case of the HEAD method, the size of the entity-body that
would have been sent had the request been a GET.

Content-Length = "Content-Length" ":" 1*DIGIT

An example is

Content-Length: 3495

Applications SHOULD use this field to indicate the transfer-length of
the message-body, unless this is prohibited by the rules in section
4.4.

主要就是你數出網頁的byte數
相關網頁
http://www.wangchao.net.cn/bbsdetail_73981.html

❿ C語言獲取Windows系統臨時目錄

取一下系統變數%windir%\temp就是你要的東西了。
strcat(getenv("windir") , "\\temp\\");