![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 68
liming_MTK
爱好编程,至今仍在学习
展开
-
关键字const详解
关键字const: 1、用关键字const定义变量指所定义的常量。即恒定的变量,即不可改变的变量。 例: const int i=10; 此时 i 就是一个整型的常量,其值不能改变。 在C++中如果用const定义一个对象,那么对象中的成员变量就是常数,不能改变(只能为初始化的值),如果用const定义类中的成员函数,那么这个函数就不能去改变对象的成员变量。(相当于this指针为指向常量原创 2010-03-20 18:00:00 · 330 阅读 · 0 评论 -
关于野指针(迷途指针)的详解
C中的野指针,C++中的迷途指针(失控指针或悬浮指针)都是 不是NULL的指针,也不是指向常量的指针,而是指向“垃圾”内存的指针。“垃圾”的意思是未知区域、未知内存。 一、指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始化,要么将指针设置为NULL,要么让它指向合法的内存。 二、指针p被free或者d原创 2010-03-20 18:14:00 · 983 阅读 · 0 评论 -
关键字volatile详解
与关键字const一样,关键字volatile也是一个类型修饰符(type specifier)。 关于volatile的作用: 例如程序清单: volatile int m=10; int k,n=m; . . k=i; volatile将告诉编译器,整形变量m是随时发生变化的,每次使用m的时候,都要求从m的地址中找出它当前的值,防止编译器进行优化,而在某种情况下取得可能错误的值原创 2010-03-20 18:13:00 · 375 阅读 · 0 评论 -
函数指针 (*(void(*)())0)() 解析
函数指针 (*(void (*)( ) )0)( ) 解析 在很多情况下,尤其是读别人所写代码的时候,对 C语言声明的理解能力变得非常重要,而C语言本身的凝练简约也使得C语言的声明常常会令人感到非常困惑,因此,在这里我用一篇的内容来集中阐述一下这个问题。 问题:声明与函数 有一段程序存储在起始地址为 0的一段内存上,如果我们想要调用这段程序,请问该如何去做? 答案 答案是原创 2010-03-20 18:22:00 · 758 阅读 · 0 评论 -
C语言中的 宏 详解
C语言宏中"#"和"##"的用法 在查看linux内核源码的过程中,遇到了许多宏,这里面有许多都涉及到"#"和"##",因此,在网上搜索了一些资料,整理如下: 一、一般用法 我们使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起. 用法: #include #include using namespace std; #define STR(s) #s #define C原创 2010-03-20 18:25:00 · 618 阅读 · 0 评论