您的位置:首页 > 其它

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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐