您的位置:首页 > 编程语言 > C语言/C++

c语言(三种语言对比、数据类型及输出、变量存储、内存分配)

2014-06-17 18:16 471 查看


数据类型:



变量的输出:

c语言不能直接打印数字,字符,只能将他们转化成字符串打印,

printf("%d\n", num);

%d 是整数占位符,将来由逗号右边的变量的值占据这个位置。(%i和%d是一样的)

%f 是浮点数占位符,默认输出小数点后6位,若只想输出小数点后两位:%.2f

%c 是字符型数据占位符。

printf( " 分数是: %d, 身高是: %.2f, 等级是: %c \n ", score, height, grade );

双引号里面是格式,双引号外面的变量按顺序用逗号隔开,占位符的个数和双引号外面变量的个数相等,变量的位置也可以用常量表示。

作用域:

1.变量的作用域是从定义变量的那一行代码开始,到它所在的代码块结束。

2.代码块的作用是释放不再使用的变量的内存,提升性能。

练习:交换两个变量的值

#include <stdio.h>

//需求:交换两个变量的值:

int main()
{
int a = 10;
int b = 11;

printf("原:a=%d, b=%d\n", a, b);

//  方法一:利用第三变量,此处省略。。。
//  方法二:求差值、求和、乘除都行。
//    a = b-a;
//    b = b-a;
//    a = a+b;
//....................
//    a = a+b;
//    b = a-b;
//    a = a-b;
//....................

//  方法三:利用位运算符。
a = a^b;
b = a^b;
a = a^b;

printf("后:a=%d, b=%d\n", a, b);

return 0;
}


内存以“字节为单位”



0x表示的是十六进制。

变量的存储

所占用字节数跟类型有关,也跟编译器环境有关



给变量分配内存

int a =10;

int b =20;

内存由大到小寻址,优先分配内存地址较大的字节给变量。a的内存地址比b大。

每个变量都有地址:第一个字节的地址就是变量的地址。



查看内存地址:

int a = 10;

printf("a的地址是:%p\n",
&a);

总结:

1.内存寻址由大到小,优先分配内存地址比较大的字节给变量。

2.变量越先定义,内存地址就越大。

3.取得变量的地址:&变量名

4.输出地址:%p

5.没有经过初始化的变量不要拿来用,因为它的值是不确定的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐