time函数&&指针作函数参数

130 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第2天,点击查看活动详情


大家好,我是芒果,一名非科班的在校大学生。对C/C++、数据结构、Linux及MySql、算法等领域感兴趣,喜欢将所学知识写成博客记录下来。 希望该文章对你有所帮助!如果有错误请大佬们指正!共同学习交流

作者简介:

9.当函数参数是一级指针可以传递的变量

void test(int* p)
{}
int main()
{
    int a = 10;
    int* p1 = &a;
    int arr[10] = {0};
    test(&a);
    test(p1);
    test(arr);
    test(NULL);	//慎重考虑
}

可以传递的内容

  • 1.传递一级指针变量
  • 2.传指针指向的类型变量的地址
  • 3.传一维数组的数组名
  • 4.传递空指针,但是要考虑清楚要干什么

10.当函数参数是二级指针可以传递的变量

void test(int** pp)
{}
int main()
{
    int a = 10;
    int* pa = &a;
    int** ppa = &pa;
    
    int*arr[5];//arr是指针数组,数组中的每个元素是int*类型,数组名是首元素地址->地址类型为int
    test(ppa);
    test(&pa);
    test(arr);
    return 0;
}

可以传递的内容

  • 1.一级指针的地址
  • 2.二级指针变量
  • 3.传指针数组的数组名

11.关于time函数

可以通过函数返回的方式带回一个时间戳 也可以通过传址的方式带回一个时间戳

函数原型: time_t time(time_t *timer)
    
参数说明: timer=NULL时得到当前日历时间(从1970-01-01 00:00:00到现在的秒数),timer=时间数值时,用于设置日历时间,time_t是一个long long类型。如果 timer不为空,则返回值也存储在变量 timer中。
函数功能: 得到当前日历时间或者设置日历时间
    
函数返回: 当前日历时间
    
作用:获取当前系统的时间,会返回一个时间戳

time_t是一种类型:

image-20220214210128187

time_t == long long ->打印:%lld

size_t == unsigned int->打印:%u


传参时:

//方法1:通过函数返回的方式带回去一个时间戳
time_ tt //存放时间戳的变量tt,tt的类型为time_t
tt = time(NULL);

//方法2:通过传址方式带回一个时间戳
time_t tt,p;
p = time(&tt);
//time(&tt) ->等价于  p = time(NULL);

#include <stdio.h>
#include <time.h>
int main()
{
	time_t seconds;
	time_t times,p;
	seconds = time(&times);
	printf("自 1970-01-01 起的秒数 = %lld\n", seconds );
	return 0;
}