关于c++中strcpy_s()函数的使用

路熊 发布于 2013/12/05 00:15
阅读 8K+
收藏 1

关于c++中strcpy_s()已经#include"string.h"怎么还报error C2065: 'strcpy_s' : undeclared identifier这个错啊!

#include <iostream>

//strlen(),strcpy()
#include <cstring>
#include "string.h"
using namespace std;
struct stringy
{
    char * str;
    int  ct;
};
void set(stringy & stry, const char * ch);
void show(const char * ch,int count=0);

int main()
{
    stringy beany;
    char testing[] = "Reality isn't what it use to be:    ";
    set(beany,testing);
    show(testing);
    show(testing,2);

    testing[0] = 'D';
    testing[1] = 'u';
    show(testing);
    show(testing,3);
    show("Done !");
    return 0;
}

void set(stringy & stry, const char *ch){

    stry.ct = strlen(ch);
    stry.str = new char(stry.ct+1);

    strcpy_s(stry.str,stry.ct+1,ch);
    cout<<"stringy str:    "<<stry.str<<endl;
    cout<<"string ct: "<<stry.ct<<endl;
}
void show(const char *ch,int count/* =0 */){
    if (count<=0)
    {
        cout<<cout<<"第 1 次:"<<ch<<endl;
    }else{
        for (int i = 0;i<count;i++)
        {
        cout<<"第 "<<i<<" 次:"<<ch<<endl;
        }
    }
    
}

加载中
0
掬一捧
掬一捧

你用Visual Studio 这种IDE试试吧,注意要加上#include "windows.h"。

这是Windows OS 的函数,不是标准库中的。使用MinW32/GCC 编译器不支持的。

路熊
路熊
我用的是VC6.0,换了visual Studio之后加上#include“windows.h”就好了,多谢啦
0
能东棍
能东棍
这个不是标准C的的, 这个是windows平台下 微软特有的
能东棍
能东棍
这种问题直接MSDN就能知道需要哪个头文件了 http://msdn.microsoft.com/en-us/library/td1esda9.aspx
返回顶部
顶部