/*
测试C语言的接口提能不能用大括号初始化列表进行构造,以及结构体变量拷贝是不是逐字段拷贝。
测试输出:plainTxt is [original], plainTxtLen=10, cipher is [password]. cipherLen=20
结论:C语言支持用大括号初始化列表进行构造,结构体变量拷贝会逐字段拷贝
*/
#include "stdio.h"
typedef struct {
char *plainTxt;
int plainTxtLen;
char *cipher;
int cipherLen;
} HukEncTxtPara;
void PrintStruct(HukEncTxtPara txtPara)
{
printf("\n plainTxt is [%s], plainTxtLen=%d, cipher is [%s]. cipherLen=%d \n",
txtPara.plainTxt, txtPara.plainTxtLen, txtPara.cipher, txtPara.cipherLen);
}
int main(int argc, char **argv)
{
char plainTxt[128] = "original";
int plainTxtLen = 10;
char cipherText[128] = "password";
int cipherLen = 20;
HukEncTxtPara txtPara = {plainTxt, plainTxtLen, cipherText, cipherLen};
PrintStruct(txtPara); // 测试输出:plainTxt is [original], plainTxtLen=10, cipher is [password]. cipherLen=20
return 0;
}
测试输出:plainTxt is [original], plainTxtLen=10, cipher is [password]. cipherLen=20
结论:C语言支持用大括号初始化列表进行构造,结构体变量拷贝会逐字段拷贝