This is my code for a program that creates an environment to run a Java .jar file. I am using the _execl function and am programming on Windows:
#include <stdlib.h>
#include <stdio.h>
#include <process.h>
int setenv(const char *name, const char *value, int overwrite);
int main()
{
setenv("JAVA_HOME2", "path\\to\\java.exe", 1);
char *var, *param, *path;
var = getenv("JAVA_HOME2");
param = ("-jar");
path = ("path\\to\\foo.jar");
intptr_t _execl(var, param, path, NULL);
}
int setenv(const char *name, const char *value, int overwrite)
{
int errcode = 0;
if(!overwrite) {
size_t envsize = 0;
errcode = getenv_s(&envsize, NULL, 0, name);
if(errcode || envsize) return errcode;
}
return _putenv_s(name, value);
}
However, VS Code returns the error: expected ')' before '(' token
on line 16, which is intptr_t _execl(var, param, path, NULL);
.
Does anyone have any solutions?