C语言
基于linux操作系统的C语言。
Joker_Linux
学习linux中...
展开
-
C语言 static关键字的作用
在C语言中,static关键字有以下几个作用1.在修饰局部变量时:①改变了其存储位置,储存在静态区,改变了变量的生存周期。②它只被初始化一次,若未初始化,则系统自动初始化为02.在修饰全局变量时:①改变了其作用域,该变量只能在该文件内的被所用函数访问。3.在修饰函数时:①改变了其作用域,该函数只能在该文件中被使用。...原创 2021-07-07 15:39:40 · 297 阅读 · 0 评论 -
C语言如何判读一个系统的大小端存储模式
小端存储:一个数据的低位字节存在在内存的低地址中大端存储:一个数据的高位字节储存在内存的高地址中#include <stdio.h>int main(){ int a = 0x12345678; char *p = (char *)&a; printf("%x\n",p[0]); if(p[0] == 0x12) { printf("small\n");原创 2021-05-21 20:32:48 · 74 阅读 · 0 评论 -
C语言中 全局变量和局部变量的区别
全区变量 : 储存在静态单元中,占用静态的储存单元。局部变量:储存在栈中,只有在函数在调用时才开始分配内存原创 2021-05-18 14:00:28 · 189 阅读 · 0 评论 -
C语言中 include < > 和include“ “ 的区别
C语言中会使用 include < > 和include" " 来引用头文件。include < > :会从编译器自带的库函数的路径下去找include " " :会先从自定义的文件中寻找文件, 寻找不到再到库函数中寻找文件原创 2021-05-18 13:57:24 · 610 阅读 · 0 评论 -
C语言printf函数中指针偏移
先看代码#include <stdio.h>int main(){ int arr[] = {1,2,3,4,5}; int *p = arr; for(size_t i = 0; i<5;i++) { printf("%d %d \n",p[i],*p++); } return 0;}执行结果:2 14 232764 3312原创 2021-03-19 20:08:42 · 499 阅读 · 0 评论 -
C语言 printf函数执行顺序
printf函数是从左往右读取,然后将先读取放到栈底,最后读取的放在栈顶,处理时候是从栈顶开始的,所有我们看见的结果是,从右边开始处理的。我们先看下这段代码,C语言经典面试题:#include <stdio.h>int main(){ int arr[] = {11,12,13,14,15}; int *p = arr; *(++p) += 100; printf("%d %d \n",*(p),*(p++))原创 2021-03-15 14:57:18 · 1375 阅读 · 0 评论 -
C语言-取数组首地址
我们先看下面这段代码: #include <stdio.h> int main() { int arr[] = {1,2,3,4,5}; int *p =(int*)(&arr+1); //&arr操作的是整个数组,返回的指针指向整个数组,&arr+1偏移的是整个数组的长度。 printf("%p %p \n",arr,&arr); printf("%p %p \n",arr+1,原创 2021-03-10 15:51:51 · 3266 阅读 · 0 评论