解析sizeof, strlen, 指针以及数组作为函数参数的应用
来源:本站原创|时间:2022-11-25|栏目:C语言|
代码如下所示:
复制代码 代码如下:
typedef struct st_test
{
int id;
char *pName;
char class[10];
}Student;
void fn(Student *pStud) {
pStud->id = 10;
pStud->pName = "Tom Simith";
strcpy(pStud->class, "Class 1");
printf("sizeof(pStud) = %d /n", sizeof(pStud)); // sizeof(pStud) = 4
printf("sizeof(pStud->id) = %d /n", sizeof(pStud->id)); // sizeof(pStud->id) = 4
printf("id:%d/n", pStud->id); // id:10
printf("sizeof(pStud->pName) = %d /n", sizeof(pStud->pName)); // sizeof(pStud->pName) = 4
printf("strlen(pStud->pName) = %d /n", strlen(pStud->pName)); // strlen(pStud->pName) = 10
printf("Name:%s/n", pStud->pName); // Name:Tom Simith
printf("sizeof(pStud->class) = %d /n", sizeof(pStud->class)); // sizeof(pStud->class) = 10
printf("strlen(pStud->class) = %d /n", strlen(pStud->class)); // strlen(pStud->class) = 7
printf("class:%s/n", pStud->class); // class:Class 1
}
void fnArray(char arr[]) {
printf("arr:%s/n", arr); // arr:Hello
printf("sizeof(arr) = %d /n", sizeof(arr)); // sizeof(arr) = 4 The length of pointer
printf("strlen(arr) = %d /n", strlen(arr)); // strlen(arr) = 5 The length of array
}
int main(int argc, char **argv)
{
Student stud;
fn(&stud);
fnArray("Hello");
return 0;
}
您可能感兴趣的文章
- 01-10数据结构课程设计- 解析最少换车次数的问题详解
- 01-10深入解析最长公共子串
- 01-10深入解析Linux下\r\n的问题
- 01-10Linux线程管理必备:解析互斥量与条件变量的详解
- 01-10解析Linux下的时间函数:设置以及获取时间的方法
- 01-10DHCP:解析开发板上动态获取ip的2种实现方法详解
- 01-10节序问题:解析大小的端判定
- 01-10深入sizeof的使用详解
- 01-10解析如何在C语言中调用shell命令的实现方法
- 01-10解析c中stdout与stderr容易忽视的一些细节