c语言学习笔记

1、c语言程序编译的四个步骤;预处理、编译、汇编、链接;

2、字符串输入问题(蓝桥杯刷题会用到): 

char a[100];
scanf("%s",a);//输入 hello world
printf("%s",a);//输出为 hello
//scanf表明之把字符数组以空格分开,一次只读取一个
//printf("%s",a)表明只读取首地址第一部分  

 3、指针:

int *p;
p=&a;
a=100; printf("%d",*p);//输出值为100 即a的值;

//p中存储为a的地址,*p则寻找p中a所存地址指向的数据

//*有两种含义 1)表示类型:
int a=10;
int *p;//表示声明的是指针类型
p=&a;
                        printf("%d",*p);//*代表操作指针所指向内存
//*p等价于*(p+0)等价于p[0]

 4、static定义变量是在编译时就已经为其分配内存,不同于局部变量。程序结束后此变量才会被释放。

5、指针指向堆区操作

//错误示范:指针p没有指向内存,为野指针。应指向堆区或栈区内存
struct
student s { int a; char b[100]; }; int main() { struct student *p; print("%d, %s",p->a,p->b); return 0; }
//加入代码
p=(struct student *)malloc(sizeof(struct student));//即指针指向堆区空间;i

 

posted @ 2020-04-28 11:09  墨迹啦咯啦咯啦咯  阅读(199)  评论(0)    收藏  举报