A. 环境变量有什么用
环境变量是用来供其他应用程序和操作系统自身确定一些重要的计算机配置。
比如 Path 环境变量,操作系统会把这个变量下的所有路径进行文件检查。在这些路径下的文件引用,只需使用文件名,而不必填入路径,操作系统会检查 Path 环境变量的路径。
比如 Temp 变量,用于设定系统临时文件夹路径等。
Path 和 Include ,Lib 等环境变量还用于不同的编译器之间共享包含头文件和函数库。
B. 怎么设置环境变量c语言 大神这几天搞死没搞好环境变量了
看飞哥的教程,一看就懂 查看更多答案>>
记得采纳啊
C. C语言环境变量问题
execve(执行文件)
在父进程中fork一个子进程,在子进程中调用exec函数启动新的程序。exec函数一共有六个,其中execve为内核级系统调用,其他(execl,execle,execlp,execv,execvp)都是调用execve的库函数。
表头文件
#include<unistd.h>
定义函数
int execve(const char * filename,char * const argv[ ],char * const envp[ ]);
函数说明
execve()用来执行参数filename字符串所代表的文件路径,第二个参数是利用数组指针来传递给执行文件,并且需要以空指针(NULL)结束,最后一个参数则为传递给执行文件的新环境变量数组。
返回值
如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno 中。
错误代码 EACCES
1. 欲执行的文件不具有用户可执行的权限。
2. 欲执行的文件所属的文件系统是以noexec 方式挂上。
3.欲执行的文件或script翻译器非一般文件。
EPERM
1.进程处于被追踪模式,执行者并不具有root权限,欲执行的文件具有SUID 或SGID 位。
2.欲执行的文件所属的文件系统是以nosuid方式挂上,欲执行的文件具有SUID 或SGID 位元,但执行者并不具有root权限。
E2BIG 参数数组过大
ENOEXEC 无法判断欲执行文件的执行文件格式,有可能是格式错误或无法在此平台执行。
EFAULT 参数filename所指的字符串地址超出可存取空间范围。
ENAMETOOLONG 参数filename所指的字符串太长。
ENOENT 参数filename字符串所指定的文件不存在。
ENOMEM 核心内存不足
ENOTDIR 参数filename字符串所包含的目录路径并非有效目录
EACCES 参数filename字符串所包含的目录路径无法存取,权限不足
ELOOP 过多的符号连接
ETXTBUSY 欲执行的文件已被其他进程打开而且正把数据写入该文件中
EIO I/O 存取错误
ENFILE 已达到系统所允许的打开文件总数。
EMFILE 已达到系统所允许单一进程所能打开的文件总数。
EINVAL 欲执行文件的ELF执行格式不只一个PT_INTERP节区
EISDIR ELF翻译器为一目录
ELIBBAD ELF翻译器有问题。
范例
#include<unistd.h>
main()
{
char * argv[ ]={“ls”,”-al”,”/etc/passwd”,(char *)0};
char * envp[ ]={“PATH=/bin”,0}
execve(“/bin/ls”,argv,envp);
}
执行
-rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd
D. 如何设置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");
(4)c语言安装环境变量有用吗扩展阅读:
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”));
}
E. C语言需要环境配置么 比如java需要配置环境变量,那么C语言需不需要呢
C不需要配环境变量,C的编译器本身在安装过程中就已经把环境变量修改了。
F. 我遇到了c语言开发环境变量问题咋办,都按它说去做了呀
请安装虚拟机后安装linux,然后学习在linux下面开发c语言
cygwin的使用,不是专业人士,出了问题,根本无法修复
这个安装的情况来看,很可能是gcc都没有安装
G. c语言修改环境变量后有什么危害
很可能就是找不到C语言编译相关的工具,比如编译器,链接器,库文件,头文件之类的;
H. 为什么按照C语言教学视频里的方法设置环境变量不行我电脑上的path好像不太对 怎么弄
PC 上面 在DOS 环境下 设置环境变量 用 SET 命令。
环境变量 名很多,PATH 只是 其中之一。
SET 用法 拍入 SET /? 得使用说明。
但只能用于当前 命令窗。
--
视窗环境 进 Control Panel ->system ->Advanced 再进 环境变量设置
不同的 Windows 系统 略有不同。你要根据自己的系统去做。
XP, vista, win-7,win-8,win-8.1 微软为某利,搞得乱七八糟....
I. 为什么要设置环境变量,环境变量有什么用
你好! 1、计算机在执行命令的时候是在环境变量找对应的命令的位置的。如果不正确设置环境变量就不能正确使用相应的命令
2、比如说你要执行 java 命令,你不设置环境变量path包括你的jdk安装路径,那系统去哪找你的java.exe文件。
如果执行某个命令,系统无法在当前文件夹里找到对应的.exe,那么系统就会去path包含的路径找挨个找看是否能知道对应的.exe,一旦找到第一个对应的.exe就运行命令,其他的路径下就不找了。如果找不到你就会看到“系统找不到某某命令”的提示。
其他的环境变量也一样的用途,只不过是用来存储一些信息用的,这些信息可以被系统使用,也可以被你的应用程序使用 谢谢!
J. 这个要配置环境变量吗,我要用C语言编写程序
看你用什么IDE了
大部分呢 都是不需要配置环境变量的
因为安装的时候
都已经自动配好了
所以 尽量不要使用绿色版 虽然免安装
但配环境有时会累死人的。