linux学习笔记 20140619

        (1)-rw-r--r--, 读 写 可执行,文件所属主   文件所属组    其他用户

        (2)drw-r--r--,d代表是目录

       (3) chmod a+x  fileName   修改fileName为可执行

       (4)  chmod 777 fileName     修改fileName为可写

//

   c/c++ 编程时注意点    

       [1]用strncpy代替strcpy,用snprintf()代替strcat(), 避免当源字符串长度异常时,从源地址到目标地址复制导致程序崩溃。

       [2]结构体内有类变量,结构体变量不可用memset置0,会导致程序异常。例如

struct  A

{

    int  a;

    string  str;

}

struct A   sA;

不可以用memset(sA,0,sizeof(aA));

        [3]linux下c/c++ 获取可执行文件所在的目录路径

                #include <unistd.h>   //readlink函数用

 

           char g_strWorkDir[256]={0}; //看具体情况,是否设置为全局变量

          chdir("./");
         
 readlink("/proc/self/exe", g_strWorkDir, 256);
           if (strlen(g_strWorkDir) < 1)
          {
               printf("Get exe path error!");
               return -1;
          }
          int  v1 = strlen(g_strWorkDir);
         while ( (v1>=0) && g_strWorkDir[v1] != '/' )
        {
                g_strWorkDir[v1] = 0;
                v1--;
        }
        if (v1<0)
       {
                printf("Process path error!");
                return -1;
        }

        [4]获取进程号

               #include <unistd.h>   //

             pid_t    rtPid = getpid();

             unsigned int uiPid = rtPid;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值