我已經作爲const char * server = NULL;
c編程結構成員變量分配給一個char *
該變量被分配一個值的變量聲明當用戶通過的服務器的IP地址作爲命令行參數到c程序使用下面的代碼。例如運行./cprogram -h 10.4.0.01
opt = 1;
while (opt < argc)
{
if (argv[opt] == NULL
|| argv[opt][0] != '-'
|| argv[opt][2] != 0)
{
print_usage();
return 0;
}
switch (argv[opt][1])
{
case 'h':
opt++;
if (opt >= argc)
{
print_usage();
return 0;
}
server = argv[opt];
break;
}
我不再需要從程序傳遞命令行參數,並把該值在ini文件。
我現在在程序開始時讀取一個ini文件並將值存儲在一個結構中。
struct lwm2m_object {
char clientname[LG_BUF];
char ipv4[LG_BUF];
char server[LG_BUF];
};
在到該結構構件變量server
分配給變量const char * server
正確的方式使用該
server = &(lwm2m.server);
這裏有什麼問題? – Curious
您需要使用'strcpy'(或'strncpy')來分配結構中的C字符串。 –
「C」和「C++」是不同的語言。你不應該一起使用標籤(除非你的問題是關於''C''與''C++''的接口)。 – nefas