蓝月心语 2017-06-02 03:35 采纳率: 62.5%
浏览 1518
已结题

c++中使用c的函数要不要加std,c++中使用Linux函数时要不要加上“::"

1.c++中使用c的函数要不要加std

比如stdio.h 与cstdio,我看网上说是将stdio.h中的函数放入了名称空间std中,那么在使用函数如printf时应该加上std::printf才对啊,但是实际上

#include<cstdio>
int main(void)
{
        printf("csdn");
        return 0;
}

 #include<cstdio>
int main(void)
{
        ::printf("csdn");
        return 0;
}

 #include<cstdio>
int main(void)
{
        std::printf("csdn");
        return 0;
}

都可以通过编译,这是什么原因?哪一种才是标准的写法?


2.c++中使用Linux函数时要不要加上“::"?

::pthread_creat(&threadID,nullptr,threadfunciton,nullptr)

  • 写回答

4条回答 默认 最新

  • 关注

    1,用VC6.0生成一个标准的helloworld来看的话

    #include <stdio.h>
    int main(int argc, char* argv[])
    {
        printf("Hello World!\n");
    
        return 0;
    }
    
    

    2,linux下的话,包含头文件
    #include
    可以使用也可以不使用

    评论

报告相同问题?