-
volatile 的英文解释是——“易失的,易改变的”。
顾名思义,这个关键字的含义是向编译器指明变量的内容可能会由于编译器意想不...
-
先看下面三个问题:
1.预处理是C语言的一部分吗?
2.包含“#”的都是预处理吗?
3.预处理后面都不需要加...
-
一、五大内存分区:
内存分成5个区,它们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。
1、栈区(stack):FIFO就是那些由编译器在...
-
一、指针函数(是一个函数)与函数指针(是一个指针变量)
在学习ARM过程中发现这“指针函数”与“函数指针”容易搞错,所以想一次把它...
-
问题:
char p[]="\xb2"给p赋值之后,p中的值到底是什么?
我动态的得到一个十六进制数之后怎么赋值给一个字...
-
举例说明volatile:
volatile int i=10;
int j = i;
...
int k = i;
volatile 告诉编译器i是随时可能发生变化的,...
-
1、sizeof操作符
sizeof(类型说明符,数组名或表达式)
sizeof 变量名
作用:返回一个对象或类型所占的内存字节数
size是尺寸,of是…&...
-
下面描述的是阳历换算阴历的算法原理。
阳历,有很强的规律性。每年12个月,1、3、5、7、8、10、12月都为31天;2月份平年28天,能被4除尽的年份里为29天,但1900年为...
-
附程序分布图:
程序的内存分配
一个由c/C++编译的程序占用的内存分为以下几个部分
1、栈区(stack)— 由编译器自动分配释放 ,存放函...
-
2048小游戏代码:
/*2048*/
#include<stdio.h>#include<stdlib.h>#include<conio.h&g...
-
数组定义字符串:
每次定义数组的时候,系统都会在内存开辟你指定数组大小的空间,并且数组中的内容对于我们是可读可写的,看如下代码:
#include<stdi...
-
C语言是我们大多数人的编程入门语言,对其也再熟悉不过了,不过很多初学者在学习的过程中难免会出现迷茫,比如:不知道C语言可以开发哪些项目,可以应用在哪些实际的开发中…&...
-
如果有很强劲的逻辑能力,或者是构思已久的话,你可以写一个很复杂的表达式,但为了使代码方便阅读,最好一个表达式不要超过3个运算符。(这里的语句,并不包含代码块),使用自增或者自减看起...
-
1.函数指针
指向函数的指针。本质是一个指针。
指针变量可以指向变量的地址、数组、字符串、动态分配地址,同时也可指向一个函数,每个函数在编译的时候,系统会分配给该函数一个入口地...
-
字符串(character string)就是一个或多个字符的序列。如:“hello world”,双引号不是字符串的一部分,而是通知编译器,这是一个字符串...
-
一、程序的内存分配
一个由C/C++编译的程序占用的内存分为以下几个部分:
1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,...
-
在c语言里面,两个函数包含在头文件里面,c++里面,标准库(被包含于中).
srand函数是随机数发生器的初始化函数。
原型:void srand(...
-
大内高手—常见内存错误
随着诸如代码重构和单元测试等方法引入实践,调试技能渐渐弱化了,甚至有人主张废除调试器。这是有道理的,原因在于调试的代价往往太大了,特别是调...
-
概述
Joel Spolsky认为,对指针的理解是一种aptitude,不是通过训练就可以达到的。虽然如此,我还是想谈一谈这个C/C++语言中最强劲也是最容易出错的要素。
鉴于...
-
应用场景:
我们使用多个scanf()的时候,如果输入缓冲区还有数据的话,那么scanf()就不会询问用户输入,而是直接就将输入缓冲区的内容拿出来用了,这就导致了前面的错误影响到...