C语言
烫青菜
如果世界漆黑,其实我很美
展开
-
C语言 | 文件操作(一)
一、文件概述1.磁盘文件指一组相关数据的有序集合,通常存储在外部介质(如磁盘)上,使用时才调入内存。从用户或者操作系统使用的角度(逻辑上)把文件分为文本文件和二进制文件。a.文本文件1.基于字符编码的文件,常见编码有ASCII、UNICODE等;2.一般可以使用文本编辑器直接打开;3.数5678,以ASCII存储形式为:00110101 00110110 00110111 00111000。b.二进制文件1基于值编码的文件,自己根据具体应用,指定某个值是什么意思;2.把内原创 2020-11-05 16:27:02 · 330 阅读 · 0 评论 -
C语言 | 联合体(union)、typedef
一、联合体union1.联合体含义联合 union 是一个能在同一个存储空间存储不同类型数据的类型; 联合体所占的内存长度等于其最长成员的长度倍数,也有叫做共用体; 同一内存段可以用来存放几种不同类型的成员,但每一瞬时只有一种起作用;共用体变量中起作用的成员是最后一次存放的成员,在存入一个新的成员后原有的成员的值会被覆盖; 共用体变量的地址和它的各成员的地址都是同一地址。2.联合体与结构体结构体的各个成员会占用不同的内存,互相之间没有影响;而共用体的所有成员占用同一段内存,修改一个成员会原创 2020-10-30 15:36:50 · 3535 阅读 · 1 评论 -
C语言 | 结构体偏移对齐、结构体指针、结构体作为函数参数
一、结构体变量的定义与使用1.先声明结构体类型再定义变量名#define _CRT_SECURE_NO_WARNINGS#include <string.h>#include <stdio.h>struct student { char name[21]; int age; char address[51];};void main(){ struct student stu; //stu.name = "张三";//错误,原创 2020-10-20 20:47:03 · 997 阅读 · 0 评论 -
C语言 | 变量、函数及内存分区
目录一、变量全局变量(存储在数据区)静态变量(存储在数据区)全局变量、局部变量、静态全局变量、静态局部变量对比二、函数静态函数三、内存分区四、内存相关函数malloc() [#include ]free() [#include ]memset() [#include ]一、变量 全局变量(存储在数据区) 在函数外定义,可被本文件及其它文件中的函数所共用,若其它文件中的函数调用此变量,须用 extern 声明。(extern:声明变量为外部变量)...原创 2020-10-16 20:38:31 · 1645 阅读 · 0 评论 -
C语言 | 字符串的操作
一、注意事项C语言中使用字符串时,使用#include <string.h>C++中使用#include <string>二、字符串的操作1.字符串拷贝全部: char* strcpy(char* dest,const char* src);把src所指向的字符串复制到dest所指向的空间中,'\0'也会拷贝。 #include <string.h> char dest_str[100] = { 0 }; const ch原创 2020-09-23 21:00:09 · 300 阅读 · 0 评论 -
C | C语言学习(五)指针和数组、指针运算、指针数组、多级指针
一、指针和数组 //数组名是数组的首地址 int arr[] = {1,2,3,4,5,6,7,8,9}; //p是指向数组的指针 int* p = arr; //修改数组元素arr[1]的值 arr[1] = 20; p[1] = 20;//正确 //输出arr[0]的值 printf("%d\n", arr[0]);//1 printf("%d\n", *arr);//1 printf("%d\n", *(arr+0));//1 printf("%d\n", *p);//1原创 2020-08-23 23:52:44 · 451 阅读 · 1 评论 -
C | C语言学习(四)随机数、函数、头文件、指针
一、随机数#include <time.h>#include <stdlib.h>#include <stdio.h>int main(){ srand((size_t)time(NULL)); for (size_t i = 0; i < 10; i++) { printf("%d\n", rand()%51+50); }}二、函数1.C语言中形参不可赋值;2....原创 2020-08-20 21:13:12 · 1527 阅读 · 0 评论 -
C | C语言学习(三)输入数据、输出数据、类型转换、数组、char数组和字符串、字符串长度
一、从标准输入设备读取数据1.读取数据(通用):scanf通过%转义的方式可以得到用户通过标准输入设备输入的数据。 int num1, num2; scanf("%d%d", &num1, &num2);//两个数据之间需要用空格或者回车隔开 scanf("%d,%d", &num1, &num2);//两个数据之间需要用,隔开 scanf("%3d%d", &num1, &num2);//输入12345回车,num1=123,num2=45原创 2020-08-19 17:16:27 · 1419 阅读 · 0 评论 -
C | C语言学习(二)占位符、常量、scanf()、进制变换
1.打印占位符:占位符 说明 %d 输出一个有符号的10进制int型(signed int) %f 输出一个float型(默认保留六位小数) %.2f 输出一个float型,保留两位小数 (C语言中存在四舍五入,C++不存在) %lf 输出一个double型 %u 输出一个无符号的10进制int型(unsigned int) %hd 输出一个short int型 %ld 输出一个long int型 %ud 输出一原创 2020-08-17 15:12:23 · 966 阅读 · 1 评论 -
C | C语言学习(一)
语言发展史:机器语言(01)->汇编语言->高级语言。 C语言文件以.c为后缀;C++语言文件以.cpp为后缀。 C 语言特点 a.优点:代码量小、执行速度快、功能强大、编程自由。 b.缺点:写代码实现周期长、可移植性较差、过于自由 , 经验不足易出错、对平台库依赖较多。 #include : a.<>表示导入系统文件; b.""表示导入自定义文件 system()函数: a.在已经运行的程序中执行另一个外部程序。 b.返回值: 成功:0;失败:..原创 2020-08-14 11:34:28 · 424 阅读 · 2 评论