社区
C++ 语言
帖子详情
register是什么意思?
32131532
2007-08-18 07:34:06
register int elem_cnt = text_words ->size();
...全文
3335
7
打赏
收藏
register是什么意思?
register int elem_cnt = text_words ->size();
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
iambic
2007-08-18
打赏
举报
回复
一个过时的关键字。
taiheBOY
2007-08-18
打赏
举报
回复
建议将变量值存储到CPU的一个寄存器中,或者存入到换存中。
访问CPU的寄存器比访问计算机的主存储器要快得多,然而由于寄存器资源是有限的,所以声明regeser只是建议将数据存储到寄存器中。
我啃
2007-08-18
打赏
举报
回复
呀,上面贴的那篇看了看质量实在太差了,看这篇吧:
http://dev.csdn.net/article/21/21103.shtm
gfxiang
2007-08-18
打赏
举报
回复
register指示声明的变量会经常改变,提示编译器为其分配一个寄存器
我啃
2007-08-18
打赏
举报
回复
这些都叫做“存储类关键字”
我啃
2007-08-18
打赏
举报
回复
C语言中auto,register,extern,static C语言中提供了存储说明符auto,register,extern,static说明的四种存储类别。四种存储类别说明符有两种存储期:自动存储期和静态存储期。其中auto和register对应自动存储期。具有自动存储期的变量在进入声明该变量的程序块是被建立,它在该程序块活动时存在,退出该程序块时撤销。
关键字extern和static用来说明具有静态存储期的变量和函数。用static声明的局部变量只能被定义该变量的函数所识别,但是不同于自动变量的是,static变量在其函数被调用退出后,仍保留其值。下次函数被调用时,可以访问最近一次被修改后的值。static变量的声明方法如下:
static int si = 1;
由于static的以上特性,可以实现一些特定的功能。下面说明常见的两种用途。
1. 统计函数被调用的次数
声明函数的一个局部变量,并设为static类型,作为一个计数器,这样函数每次被调用的时候就可以进行计数。这是统计函数被调用次数的最好的办法,因为这个变量是和函数息息相关的,而函数可能在多个不同的地方被调用,所以从调用者的角度来统计比较困难。测试代码如下:
/*--------------------------------------------------------------------------------
s_fun.c
to count the number of a function's being called, use static var.
*/
#include <stdio.h>
int fun_1(int);
int main()
{
int i;
for (i = 1; i <= 5; i++)
fun_1(i);
return 0;
}
int fun_1(int x)
{
static count = 0;
count++;
printf("I have been called %d times.\n", count);
return 2*x;
}
输出结果为:
I have been called 1 times.
I have been called 2 times.
I have been called 3 times.
I have been called 4 times.
I have been called 5 times.
2. 减少局部数组建立和赋值的开销
变量的建立和赋值是需要一定的处理器开销的,特别是数组等含有较多元素的存储类型。在一些含有较多的变量并且被经常调用的函数中,可以将一些数组声明为static类型,以减少建立或者初始化这些变量的开销。示例代码如下:
/*--------------------------------------------------------------
array_1.c
to test static array
*/
#include <stdio.h>
#include <time.h>
#include <string.h>
#define ARRAY_SIZE 10000
#define CALL_TIMES 30000
int fun_1();
int fun_2();
int main()
{
int i;
char string2[10], *string3;
time_t t;
time(&t);
string3 = ctime(&t);
printf("time 1: %s", string3);
for (i = 1; i <= CALL_TIMES; i++)
{
fun_1();
}
time(&t);
string3 = ctime(&t);
printf("time 2: %s", string3);
for (i = 1; i <= CALL_TIMES; i++)
{
fun_2();
}
time(&t);
string3 = ctime(&t);
printf("time 3: %s", string3);
return 0;
}
int fun_1()
{
int a[ARRAY_SIZE], b[ARRAY_SIZE];
int i, t;
for ( i = 0; i < ARRAY_SIZE; i++)
{
a[i] = i;
b[i] = ARRAY_SIZE - i;
}
for ( i = 0; i < ARRAY_SIZE; i++)
{
t = a[i];
a[i] = b[i];
b[i] = t;
}
return 0;
}
int fun_2()
{
static int a[ARRAY_SIZE], b[ARRAY_SIZE];
int i, t;
for ( i = 0; i < ARRAY_SIZE; i++)
{
a[i] = i;
b[i] = ARRAY_SIZE - i;
}
for ( i = 0; i < ARRAY_SIZE; i++)
{
t = a[i];
a[i] = b[i];
b[i] = t;
}
return 0;
}
经过多次运行后,典型的几次结果如下:
实验环境:
PC:Intel C 2.4D, 256M DDR333, 80G 7200RPM
OS:win XP professional, SP2
Compiler: TC 2.0
Reference:
1.H. M. Deitel, P. J. Deitel, C How To Program. 1994, Prentice Hall. 2002, China Mechine Press.
我啃
2007-08-18
打赏
举报
回复
向编译器说明最好将该变量用寄存器来存取
Midjourney AI绘图教程从入门到绘画实战
第一章 基础篇1. 第1节 - Mid journey re
gis
ter
Discord和Midjourney 并将Midjourney BOT添加至自己的服务器 Midjourney入门到精通2. 第2节 - Midjourney教程 用Mid journey画一条狗 知识点:Midjourney基本用法、U和V是什么、查询账号信息和Midjourney付费套餐说明3. 第3节 - Midjourney 教程 Mid journey imagine指令详解 知识点:Midjourney prompt结构、AR指令4. 第4节 - Midjourney教学 Mid journey imagine指令详解 知识点:用Midjourney V4和Niji模型 画出卡通风格的绘图5. 第5节 - Midjourney教程 CHAOS参数详解 知识点:用Chaos指令激发Mid journey的创造力 第二章 进阶篇6. 第6节 - Midjourney 教学 Seed参数 以图作图 知识点:用Seed指令在Mid journey中进行连续创作7. 第7节 - Midjourney进阶教程 光和权重 知识点:如何通过在midjourney中打光提高图片质感 双冒号权重的实战用法8. 第8节 - Midjourney 角色设计 知识点:在midjourney中进行卡通角色概念设计 通过修改种子角色达到对角色的控制9. 第9节 - Midjourney LOGO设计教学 知识点:--no参数 | remix mode | ChatGPT + Midjourney结合使用10. 第10节 - Midjourney + DALL·E 2 角色设计以图作图 知识点:用DALL·E 2将Midjourney的图片进行拓图和改图 实现角色的连续创作11. 第11节 - Midjourney VS DALL·E 2 AI绘图网站哪家强?用Midjourney和DALL·E 2风别进行人物⧸动物⧸风景⧸风格化⧸设计创作 最全测评12. 第12节 - Midjourney + DALL·E 2 手部修复 知识点:用DALL·E 2修复Mid journey图片的一些问题 通过渐进式修复实现对AI的控制13. 第13节 - Midjourney生成风格化图片 知识点:提交Midjourney一张照片 通过Midjourney进行照片的风格化创作14. 第14节 - Midjourney生成风格化图片 知识点:用过渡图的方式,在Midjourney中进行照片的风格化创作15. 第15节 - Midjourney生成风格化照片 知识点:用过渡图的方式在Midjourney中进行照片的风格化的一点补充说明16. 第16节 - ⧸describe 是啥?Midjourney最新命令⧸describe魔鬼测试 知识点:describe命令用法 | describe风格测试17. 第17节 - ⧸describe 是啥?Midjourney最新命令⧸describe魔鬼测试 知识点:用describe命令识别logo 第三章 常见问题18. 第18节 - Midjourney常见问题解答 知识点:seed获取 | 如何写prompt | 试用和付费 | 描述报错等问题19. 第19节 - Midjourney V5来了!全网最全V5模型测试视频 包括手部⧸面部修复、图片分辨率提升、--iw参数在以图作图中的应用
c语言中%加字母是啥意思,%C是
什么意思
? C语言中%c,%s分别代表
什么意思
?
导航:网站首页 >%C是
什么意思
? C语言中%c,%s分别代表
什么意思
?%C是
什么意思
? C语言中%c,%s分别代表
什么意思
?相关问题:匿名网友:%c单个字符输出的意思。%s是输出字符串。%d是输出整型。%f是输出整型。这是在scanf、printf这样的函数中,将参数类型与输入/输出句子中的相应位置相对应所使用的转义标志符。其中常用的有%c--对应字符型char%s--对应字符串型char...
did you re
gis
ter
the component correctly? For recursive components, make sure to provide the “name“
vue引用组件 did you re
gis
ter
the component correctly? For recursive components, make sure to provide the “name” 阐述问题: 在项目中用到了vue引用外部组件,报以上错误,百度了好半天,发现跟自己的问题还是不符合。下面说下我的问题所在。 错误信息及错误截图 通过以下错误可以看到,大概的意思就是:正确注册组件了吗?对于递归组件,请确保提供“name”选项。 其实我的这个问题不在子组件,折腾了半天,更换
c语言字母意义,%C是
什么意思
? c语言中?和:是
什么意思
导航:网站首页 >%C是
什么意思
? c语言中?和:是
什么意思
%C是
什么意思
? c语言中?和:是
什么意思
相关问题:匿名网友:%c单个字符输出的意思。%s是输出字符串。%d是输出整型。%f是输出整型。这是在scanf、printf这样的函数中,将参数类型与输入/输出句子中的相应位置相对应所使用的转义标志符。其中常用的有%c--对应字符型char%s--对应字符串型char*(char[])%d-...
<a-auto-complete>did you re
gis
ter
the component correctly? For recursive components, make sure to pr
did you re
gis
ter
the component correctly? For recursive components, make sure to provide the “name” option.
C++ 语言
64,677
社区成员
250,490
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章