小编nup*_*aya的帖子

c ++中没有名称的默认参数

考虑功能:

void foo(int a = 3)//named default parameter
void foo1(int = 3)//unnamed default parameter
Run Code Online (Sandbox Code Playgroud)

我理解第一个函数的需要.("a"的值是3,它可以在程序中使用).但是第二个函数(这不是一个错误)已经初始化为3.如果我可以使用此值,我究竟如何使用此值...

c++ parameters default

5
推荐指数
1
解决办法
3162
查看次数

从普通指针中减去空指针?

我遇到了这个功能:

    int foo(int *p)
    {
      return p - (int*)0;
    }
Run Code Online (Sandbox Code Playgroud)

有人可以解释这是做什么的吗?它似乎返回一个整数.这个减法背后的逻辑是什么?还有评论说这是一个纯粹的,可重入的功能.

c++ null pointers

3
推荐指数
1
解决办法
311
查看次数

当flags是char字符串指针而不是int时,open()函数错误

#include <stdio.h>
#include <unistd.h>  
#include <sys/stat.h>
#include <sys/types.h>
#include <fcntl.h>

int main(int argc,char *argv[])
{
    int fd;
    int i=1;
    for(i=1;i<argc;++i)
    {
        char temp;
        fd=open(argv[i],"O_RDWR"); 
        if (fd==-1)
            perror("file:");
        while (read(fd,&temp,1)!=EOF)
        {
            putchar(temp);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我执行./a.out a b.a并且b是我的目录中的文件.我收到一个错误说File exists.该行open(argv[i],"O_RDWR")未打开该文件.

它返回,-1因为文件存在.那怎么应该使用open系统调用打开文件?

c unix

0
推荐指数
1
解决办法
250
查看次数

标签 统计

c++ ×2

c ×1

default ×1

null ×1

parameters ×1

pointers ×1

unix ×1