C++可以给自己的程序生成个.conf的配置文件吗?

C++可以给自己的程序生成个.conf的配置文件吗?

问题描述:

比如一个TCP传输的代码,如果我要更改IP地址,不到代码中修改,直接在配置文件中修改就可以了,能实现吗

//创建TCP套接字
    SOCKET SocketClient = socket(AF_INET, SOCK_STREAM, 0);

    SOCKADDR_IN root;
    root.sin_addr.S_un.S_addr = inet_addr("192.168.0.171");
    root.sin_family = AF_INET;
    root.sin_port = htons(14870);

    if (connect(SocketClient, (struct  sockaddr*)&root, sizeof(root)) == INVALID_SOCKET)
    {
        printf("连接服务器失败: %d \n", WSAGetLastError());
        //储存数据自(/var/was/temp/log)中
        return ;
    }
    else
    {
        //接收数据
        recv(SocketClient, buff, sizeof(buff), 0);
    }

    char Buffer[MAX_BUF_LEN];
    strcpy(Buffer, Log.c_str());
    send(SocketClient, Buffer, sizeof(Buffer), 0);

    closesocket(SocketClient);
    WSACleanup();

可以是可以,但是你得自己实现读文件,寻找到配置项,读配置值这些操作,甚至你还要判断配置文件是否存在,有点麻烦。
实际上,windows封装了标准的读写ini配置文件的方法
WritePrivateProfileString GetPrivateProfileString
只要1行代码就可以。

https://blog.csdn.net/qqq1994_0810/article/details/82686622

    当然可以,你可以把任何数据输出到文件进行持久化保存,可以是字符型文本文件,也可以是二进制数据流文件。一般情况下,读取文本文件更加方便,易于改变和拓展;读取二进制文件保密性更好。
    大多数的设置持久化框架都采用文本文件,如XML形式、JSON形式、INI形式、或者直接自定义文本文件的格式。