sizeof, strlen, 指针和数组作为函数参数
2011-01-25 14:19
666 查看
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; }
相关文章推荐
- 解析sizeof, strlen, 指针以及数组作为函数参数的应用
- C语言学习5:数组定义,数组名的含义,数组作为函数参数,数组赋值,数组左右移动,最大最小,反向遍历,冒泡排序,sizeof 和strlen区别,gets和puts,strcpy,strcat,strcmp,strchr,strstr,strlen
- 巩固:数组作为函数参数& 指针作为函数参数的用法
- c_指针_一维数组名作为函数参数
- 数组名作为函数参数以及sizeof用法
- 数组名作为函数参数以及sizeof用法
- 结构体变量、结构指针变量、结构数组作为函数的参数应用实例分析
- 学习笔记---指针法访问数组、数组的实质、数组/指针作为函数参数
- 如何理解数组作为函数参数时,数组名就是指针?
- 数组作为函数的参数时,不能通过sizeof运算符得到该数组的大小
- 如何理解数组作为函数参数时,数组名就是指针?
- C语言中,数组名作为参数传递给函数时,退化为指针
- 数组名作为函数参数时,退化为指针
- C语言提高-第24/25讲: 数组名【指针】作为函数参数(成绩处理函数版)
- 结构体变量、结构指针变量、结构数组作为函数的参数应用实例分析
- 结构体变量、结构指针变量、结构数组作为函数的参数应用实例分析 .
- 学习心得——数组作为函数参数后sizeof获取不到数组在内存中所占字节数的问题
- C语言提高-第23/24/25讲: 指针的运算/数组名作为函数参数/指针作函数参数(一维数组Vs指针)
- 数组作为函数参数传递时退化为指针(腾讯)
- (转载) C语言技巧:怎样把数组作为参数传递给函数?(值传递和指针传递)