
C语言
tsfg
这个作者很懒,什么都没留下…
展开
-
C语言中 \0 代表什么?
C语言中 \0 代表什么?_\0在c语言中是什么意思-优快云博客转载 2023-12-06 21:35:03 · 102 阅读 · 0 评论 -
C语言 原码、反码、补码
C语言 原码、反码、补码_c语言补码-优快云博客原创 2023-11-16 17:08:34 · 301 阅读 · 0 评论 -
测试计算机是小端存储还是大端存储
测试计算机是小端存储还是大端存储-优快云博客转载 2023-11-11 11:51:47 · 85 阅读 · 0 评论 -
野指针和内存操作分析
初识野指针:野指针通常是因为指针变量中保存的值不是一个合法的内存地而造成的野指针不是NULL指针,是指向不可用内存的指针;NULL指针不容易用错,因为if语句很好判断一个指针是不是NULL;C语言中没有任何手段可以判断一个指针是否为野指针;野指针的由来:1.局部指针变量没有初始化#include <stdio.h>#include <string.h>s...原创 2020-01-12 22:55:48 · 366 阅读 · 0 评论 -
程序的内存布局
程序文件的一般布局:代码在可执行程序中的对应关系:程序的内存布局:文件布局在内存中映射:各个段的作用:1.堆栈段在程序运行后才正式存在,是程序运行的基础;2…bss段存放的是未初始化的全局变量和静态变量;3…text段存放的是程序中执行代码;4…data段保存的是那些已经初始化了的全局变量和静态变量;5…rodata段存放程序中的常量值,如字符串常量;程序术语对应关系:静...原创 2020-01-01 21:53:04 · 286 阅读 · 0 评论 -
程序中的三国天下
程序中的栈:(举例:多个盘子,最底部的盘子)1.栈在程序中用于维护函数调用上下文,没有栈就没有函数,没有局部变量;特点:后进先出栈保存了一个函数调用所需的维护信息1.函数参数,函数返回地址2.局部变量3.函数调用上下文分析函数调用过程。。。程序中的堆:为什么有了栈还需要堆? 栈上的数据在函数返回后就会被释放掉,无法传递到函数外部,如:局部数组;堆是程序中一块巨大的内存空...原创 2019-12-30 22:15:49 · 238 阅读 · 0 评论 -
动态内存分配
为什么使用动态内存分配?C语言中的一切操作都是基于内存的;变量和数组都是内存的别名,如何分配这些内存由编译器在编译期间决定: 定义数组的时候必须指定数组长度; 而数组长度是在编译器就必须决定的;需求:程序运行的过程中,可能需要使用一些额外的内存空间;#include <stdio.h>#include <string.h>//产品 的结构体stru...原创 2019-12-17 22:41:52 · 179 阅读 · 0 评论 -
函数与指针分析
函数类型C语言中的函数有自己特定的类型函数的类型由返回值,参数类型和参数个数共同决定 例如: int add(int i, int j)的类型为int(int, int)C语言中通过typedef为函数类型重命名 typedef type name (parameter list) ; 例如:typedef int f(int, int); typedef void...原创 2019-12-08 21:01:09 · 150 阅读 · 0 评论 -
数组参数和指针参数分析
为什么C语言中的数组参数会退化为指针那?C语言以高效为最终设计目的,在函数传递的时候如果拷贝整个数组执行效率将大大下降。二维数组参数:二维数组参数同样存在退化的问题:二维数组可以看做是一个一维数组;二维数组中的每个元素是一维元素;二维数组参数中的第一维的参数可以省略:void f(int a[5]); <-> void f(int a[]) <-> void...原创 2019-12-03 21:44:24 · 235 阅读 · 0 评论 -
C语言之多维数组和多维指针
指向指针的指针:指针变量在内存中会占用一定的内存空间可以定义指针来保存指针变量的地址值int main(){ int a = 0; int* p = NULL; int** pp = NULL; pp = &p; //pp指针指向p *pp = &a; //修改p,让p指向了a return 0;...原创 2019-10-07 20:47:20 · 854 阅读 · 0 评论 -
do while妙用:
目录 问题来源:代码分析结束问题来源:大家都知道:do语句: do语句先执行后判断,循环体至少执行一次 for/while语句先判断后执行在平常的使用中我们也一般只用for/while循环,do语句鲜有用到,那么是否do while语句真的完全可以用for/while代替,毫无用处那?代码分析我们来看一段代码code:int func(...原创 2018-12-07 09:52:28 · 380 阅读 · 0 评论 -
C语言之指针基础
文章目录前言指针本质:不同类型的指针占用的内存空间大小相同吗?*号的意义:代码实践:指针是一种类型吗?指针类型!!!通过指针写内存:传值调用和传址调用:证明:“指针适用于复杂数据类型作为参数的函数中” 的demo:代码实践:利用指针实现变量交换函数:常量与指针(const修饰指针):指针小结:前言我们先提出一个问题:既然程序中的变量只是一段存储空间的别名,那么是不是必须通过这个别名才能使用这段...原创 2019-03-04 11:10:19 · 731 阅读 · 0 评论 -
C语言之字符串
概述:从概念上讲,C语言中没有字符串数据类型C语言中使用字符数组来模拟字符串C语言中的字符串是以’\0’结束的字符数组C语言中的字符串可以分配于栈空间,堆空间或者只读存储区#include <stdio.h>#include <malloc.h>int main(){ char s1[] = {'H','e','l','l','o'};//字符数组,不是...原创 2019-03-29 18:37:29 · 587 阅读 · 0 评论 -
C语言之数组基础
数组的概念:数组是相同类型的变量的有序集合int a[5];数组的大小:数组元素的个数可以显示或隐式指定int a[5] = {1,2}; //显示指定int b[] = {1,2}; //隐示指定#include <stdio.h>#include <malloc.h>int main(){ int a[5]={1,2}; //数组a中的元素值为...原创 2019-03-22 21:36:33 · 314 阅读 · 0 评论 -
C语言之类型和变量的本质
文章目录什么是数据类型?类型的本质变量本质:即兴感言:什么是数据类型?数据类型可以理解为固定内存大小的别名 (char是1个字节的别名, int是4个字节的别名)类型的本质变量本质:变量是一段实际连续存储空间的别名程序中通过变量来申请并命名存储空间通过变量的名字可以使用存储空间注意:i_pointer是指针即兴感言:此节讲解很重要!!!很多人做了C语言多年,仍然不知道、也...原创 2019-03-29 22:36:57 · 363 阅读 · 0 评论 -
C语言之数组和指针分析
数组的本质:数组是一段连续的内存空间数组的空间大小为sizeof(array_type) * array_size数组名可看做指向数组第一个元素的常量指针指针的运算:指针与整数运算指针是一种特殊的变量,与整数的运算规则为 ,与整数的运算为:p + n — (unsigned int)p + n * sizeof( * p)结论:当指针p指向一个同类型的数组的元素时:p+1将指向...原创 2019-03-24 09:00:22 · 320 阅读 · 0 评论 -
C语言之指针数组和数组指针
文章目录数组类型定义数组类型数组指针实例分析:指针数组:指针数组的使用:main函数的参数小结:数组类型C语言中的数组有自己特定的类型数组的类型由元素类型和数组大小共同决定例:int array[5]的类型为int[5]定义数组类型C语言中通过typedef为数组类型重命名typedef type(name)[size];数组类型:typedef int(AINT5)[5];t...原创 2019-05-04 22:32:22 · 357 阅读 · 0 评论