
C语言基础
抖立FLAG
你这个年龄,怎么睡得着觉?
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
文件---C语言文件操作
目录什么是文件文件名文件类型文件缓冲区文件指针文件的打开和关闭文件的顺序读写文件的随机读写文件结束的判定 什么是文件 磁盘上的文件是文件。 但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件 程序文件 包括源程序文件(后缀为.c),目标文件(windows环境后缀为.obj),可执行程序(windows环境后缀为.exe)。 数据文件 文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或者输出内容的文件 以下主要讨论的是数据文件。 之前我们对处理数据的输原创 2020-07-17 22:29:54 · 190 阅读 · 0 评论 -
##C语言(六、结构体内存对齐)基础不牢地动山摇!!!
结构体内存对齐 结构体的对齐规则: 第一个成员在与结构体变量偏移量为0的地址处。 // 第一个成员的起始偏移量为0,0可以整除任意数。所以偏移量为0; 其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处。 (1) 对齐:当存放一个变量时,该变量的起始偏移量,能整除自身对齐数。 (2) 对齐数:默认情况下,对齐数就是类型本身的大小。 对齐数 = 编译器指定的一个对齐数 与 该成员大...原创 2019-09-13 22:15:45 · 175 阅读 · 0 评论 -
模拟实现memmove,及其特殊情况
从src的位置开始向后复制num个字节的数据到det的内存位置 memmove 函数处理的源内存块是可以重叠的。 这种特殊情况 即 #include<stdio.h> #include<windows.h> #pragma warning (disable:4996) void *My_Memcpy(void * dst, const void *src, int num...原创 2019-07-17 11:36:20 · 124 阅读 · 0 评论 -
## C语言(五、数据在内存中的存取) 基础不牢地动山摇!!!
存数据时,看数据 取数据时,看类型 unsigned char 取值范围是 0 —— 255 ,不会小于0 unsigned char a = -5; // 存入-5 ,计算机以补码进行存储 原码 1000 0101 反码 1111 1010 补码 1111 1011 printf("%u",a) //251 取数据时,看类型 unsigned char ,因此不会看...原创 2019-06-24 16:13:03 · 220 阅读 · 0 评论 -
## C语言(四、指针) 基础不牢地动山摇!!!
1、指针是什么? 将地址形象化的称为指针, 即地址就是指针,指针就是地址。 指针变量是变量 , 指针变量里放地址。 2、指针定义 指针的定义方式是 type + * 3、指针+整数 type + * 指针加1,其实所加的是指针所指向type的大小 , 即 int *p , p+1 = p +sizeof(type) 指针加n,其实所加的是n倍的 指针所指向类型的大小 列: int a ...原创 2019-06-24 16:09:17 · 146 阅读 · 0 评论 -
## C语言(三、运算符和表达式) 基础不牢地动山摇!!!
1、 逻辑运算需要先将数据从内存加载到cpu,在cpu中完成算术逻辑运算。只有重新再写回内存时,才会改变原数据 int a = 10; a+10; // 不改变a的大小 a<<1 // 不改变a的大小 2、位移操作符 左移相当于 *2 右移相当于 /2 左移操作符 << 规则:左边抛弃,右边补0 右移操作符 >> 规则: (1)逻辑移位,左补0,右丢弃(一...原创 2019-05-24 17:35:51 · 163 阅读 · 0 评论 -
不允许创建临时变量,求两个数的内容?
不允许创建临时变量,求两个数的内容? 异或满足加法交换律 x ^= y; // x = x ^ y y ^= x; // y = y ^ x ——> y = y ^ ( x ^ y) ——> y = x; 此时 x = x ^ y , y = x x ^= y; ...原创 2019-05-07 14:10:36 · 124 阅读 · 0 评论 -
求出100——200素数?( 精解 )
求出100——200素数?( 精解 ) X = a * b 只可能存在 a > b , b > a , a = b 三种情况 , 一定不会存在 a > b && b > a 的情况 。 即 在 2 —— sqrt( x ) 的范围内 , 若不存在因数,即为素数。 #pragma warning(disable : 4996) #include &...原创 2019-05-07 14:10:04 · 170 阅读 · 0 评论 -
c语言程序练习(三)
/* 1、 将数组A中的内容和数组B中的内容进行交换。(数组一样大) 求数组得长度: 整个数组 字节 长度的大小 除以 数组的第一个元素字节长度 int length = sizeof( a ) / sizeof( a[0] ) */ #pragma warning (disable : 4996) #include<stdio.h> #includ...原创 2019-04-24 21:45:52 · 496 阅读 · 0 评论 -
c语言程序练习(四)
1.在屏幕上输出以下图案: 2.求出0〜999之间的所有“水仙花数”并输出。 3. 求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字, 例如:2+22+222+2222+22222原创 2019-04-28 21:29:57 · 213 阅读 · 0 评论 -
求10 个整数中最大值。
#include <stdio.h> int main(){ printf( " 请输入10个整数 :" ); int i ; int arr[ 10 ] = { 0 } ; int max = 0 ; for( i = 0; i < 10 ;i++ ){ scanf( "%d", &arr[ ...原创 2019-04-22 23:02:18 · 138 阅读 · 0 评论 -
1. 给定两个整形变量的值,将两个值的内容进行交换。
// 方法一 #include <stdio.h> int main(){ printf( " 请输入两个整型变量:"); int number1 ; int number2 ; void swap ( int *p, int *q ); // 函数申明 scanf( "%d %d" , & number1 , &nu...原创 2019-04-22 22:39:33 · 401 阅读 · 0 评论 -
如何找出数组中唯一成对的数组元素
题目:1——1000这1000个数,放入含有1001个数组元素的数组中,只有唯一的一个值重复,其它均止出现一次。没个数组元素均只能访问一次,设计算法,将其找出? 异或 ^ : 相同位0 , 不同位1。 任何数与0异或就是它本身 0 ^ 0 = 0 x ^ 0 = x x ^ x = x ...原创 2019-04-21 23:20:33 · 310 阅读 · 0 评论 -
## C语言(二) 基础不牢地动山摇!!!
算术运算符 1、%运算左右两数必须为整型数据 2、/ 取整后向0靠拢 3、参与运算的两个数中有一个数为实数,则结果为double型,所有的实数都按double 型进行运算。 4、字符型数据可以和数值型数据混合运算,因为字符型数据在计算机内是用一个字节得整数进行表示。 ...原创 2019-04-25 18:49:26 · 220 阅读 · 0 评论 -
## C语言(一) 基础不牢地动山摇!!!
C语言(一) 程序设计涉及两个问题,一是 数据的描述 ,二是 动作的描述。而对数据进行处理是程序设计的主要任务。 数据类型 1、为什么要引入数据类型? 在计算机储存中,不同类型的数据占用的数据存储空间长度不同:同一种类型的数据在计算机存储器中占用的长度,也因计算机字长不同而异。针对不同类型数据,计算机采取不同的存储方式并进行处理。随着处理对象的复杂化,数据类型也需要更加丰富。 2、数据类型的分类?...原创 2019-04-20 21:45:04 · 264 阅读 · 0 评论