2021/7/22 uint64 打印出来

1. uint64_t  打印出来

uint64_t lo_freq_hz;
char *freq_ptr = u64_to_str(lo_freq_hz);
DBG_FLOW("tx_lo_freq= %s \r\n",freq_ptr );
char * u64_to_str(uint64_t val)
{
	uint8_t tmpbuff[32];
	uint8_t cnt = 0;
	int i,j;
	uint64_t tmp;
	uint8_t num_tmp = 0;

	memset(tmpbuff, 0, sizeof(tmpbuff));
	while(1) {
		num_tmp = val % 10;
		tmp = val / 10;
		if ((tmp == 0) && (num_tmp == 0)) {
			//DBG_FLOW("\r\nbreak\r\n");
			break;
		}
		tmpbuff[cnt++] = num_tmp + '0';
		val = tmp;
		//DBG_FLOW("%d",num_tmp);
	}

	j = 0;
	memset(g_u64strbuff,0,sizeof(g_u64strbuff));
	for (i = cnt -1; i >= 0; i--) {
		g_u64strbuff[j++] = tmpbuff[i];
	}
	//DBG_FLOW("%s\r\n",g_u64strbuff);
	return (char * )g_u64strbuff;
}

2.  

静态函数函数的返回类型前加上关键字static函数就被定义成为静态函数。 函数定义和声明默认情况下是extern的,但静态函数只是在声明他的文件当中可见,不能被其他文件所用。 ... 静态局部对象在程序执行到该对象的声明处时被首次初始化。

在C中,static主要定义全局静态变量、定义局部静态变量、定义静态函数。

1、定义全局静态变量:在全局变量前面加上关键字static,该全局变量变成了全局静态变量。全局静态变量有以下特点。

a.在全局区分配内存。
b.如果没有初始化,其默认值为0.
c.该变量在本文件内从定义开始到文件结束可见。

2、定义局部静态变量:在局部变量前面加上关键字static,其特点如下:
a.该变量在全局数据区分配内存。
b.它始终驻留在全局数据区,直到程序运行结束。
c. 其作用域为局部作用域,当定义它的函数或语句块结束时,其作用域随之结束。

3、定义静态函数:在函数返回类型前加上static关键字,函数即被定义为静态函数,其特点如下:

a.静态函数只能在本源文件中使用
b.在文件作用域中声明的inline函数默认为static类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值