C语言基础学习:指针入门和基础数据类型

1、C中基本数据类型所对应的占位符和输出。

int i = 100;
double d = 200;
float f = 200;
long l = 200;
short s = 100;
cahr c = "a";
printf("i的值是:%d\n, i");//表示整数,%d是占位符,\n是换行
printf("d的值是:%lf\n, i"); //double类型表示long float
printf("f的值是:%f\n, i");
printf("l的值是:%l\n, i");
printf("s的值是:%d\n, i");
printf("c的值是:%c\n, i");

2、C中基本数据类型占据几个字节

printf(“int类型所占据的字节数:%d\n”, sizeof(int));//4

printf(“double类型所占据的字节数:%d\n”, sizeof(double));//8

printf(“char类型所占据的字节数:%d\n”, sizeof(char));//1

3、初识C中的指针

指针 == 地址
%p == 地址输出的占位
& == 取出地址
* == 取出地址所对应的值
int number = 100000printf("此number变量的地址是:%p\n", &number);//输出number的内存地址

printf("此number变量的值是:%d\n", *(&number))// 取出number地址所对应的值

int * intp = &number;

printf("此number变量的值是:%d\n", * intp )// 取出number地址所对应的值

内存地址 == 指针  
指针 == 内存地址   

* intp (int 类型的指针),既然有int,那么当然就有其它的例如double类型了。
指针变量 · 指针别名 == 指针的一个变量  定义: int * aaa,aaa就是代表一个指针的变量

4、通过指针地址修改值

int i = 100;
int * p = i;//这是不规范的,int * 是指针类型,你给它赋值的是一个100的引用,不是指针地址。
int * p  = &i;//这才是规范的,它是什么类型,你给它赋值什么类型。

*p = 300;//表示把*p对应的地址的值赋值成300

5、函数的调用与写法

int main(){
change()
return 0;
}
//会报错,正常情况下函数不能写在main下面
void change(){}
//先声明,C语言不允许函数重载,所以后面的方法不能写一样的。java可以,C++可以。
void change(int i);

void change1(int * i) {
*i = 300
}


int main(){
int i = 100;
change(i)
printf("%d\n",i);//i = 100

change1(&i);
printf("%d\n",i);//i = 300

/**
int * i ; 定义指针

*i = 888; 取出指针对应地址的值并赋值位888


*/



return 0;
}
//这种是可以的,这个时候我想的是直接在上面写得了,什么鬼先声明再实现.
//这不跟写接口和实现一样,写了两次了。
void change(int i){
//C/c++z在构建的时候为当前这个函数的形参int类型,i创建一个新的变量,跟上面的i没有半毛钱关系。
	i = 200;
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值