Linux下代码实现创建目录mkdir

Linux下代码实现创建目录mkdir,第1张

Linux下mkdir函数

头文件库:

1. 创建目录

      #include <sys/stat.h>

      #include <sys/types.h>

      int mkdir(const char *pathname, mode_t mode)

运用条件:只能在已存在的目录下建立一级子目录

返回值:  返回0表示成功,返回-1表述出错。

mode 表示新目录的权限,可以取以下值:

其中,mode就用0777,0755这种形式。

2. 判断一个目录是否存在

可以使用opendir来判断,这是比较简单的办法。

      #include <sys/types.h>

      #include <dirent.h>

      DIR *opendir(const char *name)

***********************************

#include<stdio.h>

#include<string.h>

#include<errno.h>

#include<unistd.h>

#include<dirent.h>

#include<sys/types.h>

#include<sys/stat.h>

extern int errno

#define MODE (S_IRWXU | S_IRWXG | S_IRWXO)

int mk_dir(char *dir)

{

    DIR *mydir = NULL

    if((mydir= opendir(dir))==NULL)//判断目录

    {

      int ret = mkdir(dir, MODE)//创建目录

      if (ret != 0)

      {

          return -1

      }

      printf("%s created sucess!/n", dir)

    }

    else

    {

        printf("%s exist!/n", dir)

    }

    return 0

}

linux lpopt 安装目录是:在系统 /usr/local 目录下,默认是放在新建的 build 文件夹中。代码是../configure --prefix=/usr/localmake。

linux lpopt检测编译是否成功的代码是:sudo make testsudo make install。

linux lpopt安装代码是:

cd ~/Ipopt-3.12.8/ThirdParty/Blas

./get.Blascd ../ASL

./get.ASLcd ../Lapack

./get.Lapackcd ../Mumps

./get.Mumpscd ../Metis。

/get.Metis

下载完第三方库之后,回到 Ipopt-3.12.8 文件夹路径下,cd ../../mkdir buildcd build。

使用linux lpopt解决非线性规划最优化问题的方法是:

第一步:求解目标函数的梯度。

第二步:求解约束条件的Jacobian矩阵。

第三步:求解目标函数和约束条件的Hessian矩阵。即求解。

得到至此,准备工作已经就绪,接下来调用Ipopt 的API接口进行计算。

1、get_nlp_info设置以下的参数:n=4//变量x个数、m=2//约束条件个数、nnz_jac_g=8//Jacobian非零个数、Nnz_h_lag=10//Hessian非零个数。

2、get_bounds_info 设置以下的参数:x_l[i]设置xi的下界值、x_u[i]设置xi的上界值、g_l[i]设置约束i的下界值、g_u[i]设置约束i的上界值。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/5923447.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-08
下一篇2023-03-08

发表评论

登录后才能评论

评论列表(0条)

    保存