1、4字节对齐是什么意思
比如你现在的数据占用了一个字节,但是你得给它们分四个字节。如果你现在的数据占用了五个字节, 那你得给它们分八个字节。
2、memset
原型:extern void *memset(void *buffer, int c, int count);
用法:#i nclude
功能:把buffer所指内存区域的前count个字节设置成字符c。
说明:返回指向buffer的指针。
//////////////////////////////////////////////////////////////////////////////////////////////////////
memset函数详细说明
1。void *memset(void *s,int c,size_t n)
总的作用:将已开辟内存空间 s 的首 n 个字节的值设为值 c。
2。例子
main(){
char *s="Golden Global View";
clrscr();
memset(s,'G',6);//貌似这里有点问题//
printf("%s",s);
getchar();
return 0;
}
【这个问题相当大,程序根本就运行不下去了,你这里的S志向的是一段只读的内存,而你memset又试图修改它,所以运行时要出错,修改办法char *s修改为char s[]】
3。memset() 函数常用于内存空间初始化。如:
char str[100];
memset(str,0,100);
4。memset()的深刻内涵:用来对一段内存空间全部设置为某个字符,一般用在对定义的字符串进行初始化为‘memset(a, '/0', sizeof(a));
memcpy用来做内存拷贝,你可以拿它拷贝任何数据类型的对象,可以指定拷贝的数据长度;例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),会造成b的内存地址溢出。
strcpy就只能拷贝字符串了,它遇到'/0'就结束拷贝;例:char a[100],b[50];strcpy(a,b);如用strcpy(b,a),要注意a中的字符串长度(第一个‘/0’之前)是否超过50位,如超过,则会造成b的内存地址溢出。
5.补充:某人的一点心得
memset可以方便的清空一个结构类型的变量或数组。
如:
struct sample_struct
{
char csName[16];
int iSeq;
int iType;
};
对于变量
struct sample_strcut stTest;
一般情况下,清空stTest的方法:
stTest.csName[0]='/0';
stTest.iSeq=0;
stTest.iType=0;
用memset就非常方便:
memset(&stTest,0,sizeof(struct sample_struct));
如果是数组:
struct sample_struct TEST[10];
则
memset(TEST,0,sizeof(struct sample_struct)*10);
3、c语言中宏定义是什么意思?
形式:#define<宏标志><字符串> 例如 #define PI 3.14159 表示在以下的程序中 PI 课代替3.14159
4、位域
有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C/C++语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进制 位划分为几个不同的区域,并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可以把几个不同的对象用一个字节的二进制位域来表示。
一、位域的定义和位域变量的说明位域定义与结构定义相仿,其形式为:
struct 位域结构名
{ 位域列表 };
其中位域列表的形式为: 类型说明符 位域名:位域长度
例如:
struct bs
{
int a:8;
int b:2;
int c:6;
};
具体信息如下:
http://blog.csdn.net/wuxuguang123/article/details/7916623
相关推荐
资源名称:C语言基础知识视频教程(21集)资源目录:【】C语言基础知识视频(01-03)【】C语言基础知识视频(04-06)【】C语言基础知识视频(07-09)【】C语言基础知识视频(10-12)【】C语言基础知识视频(13-15)【】C语言...
适合有C语言基础的同学,其中包含搜集整理的c与c语言的对比。
C语言基础知识 C语言基础知识 C语言基础知识 C语言基础知识 C语言基础知识
C语言基础 C语言基础 C语言基础 C语言基础
C语言基础教程---电子教案 C语言基础教程---电子教案 C语言基础教程---电子教案
c语言基础教程 txt版 怎样学习C语言 很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言?我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言...
C语言基础知识大全 C语言基础知识大全 C语言基础知识大全 C语言基础知识大全
C语言教程之C语言基础.pdf
C语言基础知识大全.doc
C语言基础学习心得总结文档 C语言基础学习心得总结文档 C语言基础学习心得总结文档 C语言基础学习心得总结文档 C语言基础学习心得总结文档 C语言基础学习心得总结文档 C语言基础学习心得总结文档 C语言基础学习心得...
有相当多的c语言的基础例子对于想学好c语言的人 这是一个很好的基础参考例子,一切从基础开始
C语言基础源代码.其最基础的基本数据类型到指针,基本可以达到学习iOS的基础.
C语言基础 C语言基础 C语言基础 C语言基础.zip
c语言基础学习资料/包含课程PPT.c语言基础学习资料/包含课程PPT
c语言基础知识总结,让你最快掌握c语言基础,同时,掌握在考试中易错知识点
本书由4篇组成:第1篇是C语言基础,讲解了C语言的发展历程、特点及C语言程序的编译和链接、顺序结构、条件结构、循环结构;第2篇是C语言技术进阶,包括数组、指针、函数、结构型、共用型、枚举型和用户自定义类型;...
以判断选择为主的C语言基础习题,希望对大家有所帮助。
C语言基础学习笔记
c语言基础知识.pdf,初学者的宝书,非常有用的学习书
一些C语言基础学习PPT--献给和我一样的C语言迷茫者 一共有9个PPT,涉及多项C语言基础。