![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C
C语言基础语法学习
vitobo
所有灿烂的时刻,最终都要用孤独来偿还
展开
-
C语言-思维导图
原创 2020-02-14 13:12:36 · 125 阅读 · 0 评论 -
C语言-动态内存管理
为什么存在动态内存分配通常我们内存开辟的方式为:int a = 20;//在栈空间上开辟四个字节 char arr[10] = {0};//在栈空间上开辟10个字节的连续空上述的开辟空间的方式有两个特点: 1. 空间开辟大小是固定的。 2. 数组在申明的时候,必须指定数组的长度,它所需要的内存在编译时分配。但是对于空间的需求,有时候我们需要的空间大小在程序运行的时候才能知道,那...原创 2020-02-13 15:48:41 · 179 阅读 · 0 评论 -
C语言-自定义类型:结构体,枚举,联合
结构体结构体的基础知识结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。结构体的声明例如描述一个学生:struct Stu{ char name[20]; int age; char sex[5]; char id[20];}S;//S为变量列表typedef struct Stu{ int a; char b; float c;}s,*...原创 2019-11-02 01:19:55 · 130 阅读 · 0 评论 -
C语言-字符函数和内存函数的模拟实现
前言C语言中对字符和字符串的处理很是频繁,但是C语言本身是没有字符串类型的,字符串通常放在常量字符串中或者字符数组中。 字符串常量适用于那些对它不做修改的字符串函数。字符函数和内存函数介绍求字符串长度strlen长度不受限制的字符串函数strcpy strcat strcmp长度受限制的字符串函数介绍strncpy strncat strncmp字符串查找strstr...原创 2019-10-28 22:44:50 · 173 阅读 · 0 评论 -
C语言-指针深入理解
指针的进阶1. 字符指针字符指针 char*使用方法代码 char* pstr = "hello world"; 特别让人以为是把字符串 hello world 放到字符指针 pstr 里了,但是/本 质是把字符串 hello world 首字符h的地址放到了pstr中。面试题这里str3和str4指向的是一个同一个常量字符串。C/C++会把常量字符串存储到单独的一个内存区域,当几个...原创 2019-11-10 22:06:58 · 226 阅读 · 0 评论 -
指针笔试题解析
笔试题1int main() { int a[5] = { 1, 2, 3, 4, 5 }; int *ptr = (int *)(&a + 1); //&a取地址数组名–>数组指针->数组指针+1->跳过整个数组 printf( "%d,%d", *(a + 1), *(ptr - 1)); //2 ...原创 2019-11-28 16:20:17 · 161 阅读 · 0 评论 -
数组笔试题解析
sizeof和strlen的区别sizeof(): 是求字节大小的,但是是在编译期间看表达式的结果将来会是什么类型数组名只有处于以下两种情况时才代表整个数组:①数组名单独在sizeof内时。② &数组名(如&a)strlen是函数,只能以char*(字符串)做参数。而且,要想得到的结果正确必须包含 ‘\0’(通过strlen的实现得知)。而strlen是在运行的时候才开...原创 2019-11-28 00:14:29 · 156 阅读 · 0 评论 -
C语言-指针初识
指针是什么?内存在计算机中,内存就相当于一条长长的街道。街道两旁住了很多人家,每个人家都有自己的门牌号,门牌号就相当于他们家的地址,并且地址是唯一的。指针指针是个变量,存放内存单元的地址(编号)。#include<stdio.h>int main(){ int a = 10; int *p = &a;//取出a的地址 //地址存放在对应类型的指针当...原创 2019-10-21 20:39:54 · 100 阅读 · 0 评论 -
C语言-数据在内存中的存储
数据类型字符型数据1.字符与字符代码把字符的相对应的ASCII码(整数,映射关系见ASCII码表)放到存储码单元中,而这些ASCII代码值在计算机中同样以二进制补码的形式存放的。2.字符变量字符型数据的存储空间和值的范围(32位操作平台)类型字节数取值范围signed char(有符号字符数)1-2^7 ~ (2^7-1)unsigned char(无符...原创 2019-10-13 21:21:17 · 820 阅读 · 0 评论 -
c语言-函数
函数是什么定义:子程序。是一个大型程序中的某部分代码,由一个或多个语句块组成。它负责完成某项特定任务,具备相对的独立性。一般会有输入参数并有返回值。提供对过程的封装和细节的隐藏。C语言中函数的分类:库函数C语言的基础库中提供了一系列类似的库函数,方便程序员进行软件开发。如(printf, strcpy, pow)C语言常用的库函数有:IO函数字符串操作函数字符操作函数时...原创 2019-10-20 20:03:00 · 423 阅读 · 0 评论 -
C语言-数组
1.一维数组的创建和初始化数组的创建数组是一组相同数据类型元素的集合。在创建数组时,我们必须定义数组的类型和大小,数组的大小不能为0。type_t arr_name[const_n];//type_t 是指数组的元素类型//const_t 是一个常量表达式,用来指定数组的大小int arr1[10];char arr2[10];float arr3[5];double arr4...原创 2019-10-19 22:44:23 · 588 阅读 · 0 评论 -
C语言-操作符详解
算术操作符 + - * / %1.除了%操作符之外,其他的几个操作符可以作用于整形和浮点数。2.对于 / 操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的是浮点数除法。//printf("%d\n",5/2);//2//printf("%f\n",(float)5/2);//2.500000//printf("%f\n",5/(float)2)...原创 2019-09-05 23:07:02 · 137 阅读 · 0 评论 -
C语言-关键字及其作用
一,C语言关键字第一个关键字:auto用来声明自动变量。 可以显式的声明变量为自动变量。只要不是声明在所有函数之前的变量,即使没加auto关键字,也默认为自动变量。并且只在声明它的函数内有效。而且当使用完毕后,它的值会自动还原为最初所赋的值。自动变量使用时要先赋值,因为其中包含的是未知的值。例:auto int name=1;第二个关键字:static用来声明静态变量。a.修饰局部变量——...原创 2019-07-19 15:45:53 · 6000 阅读 · 0 评论 -
判断当前机器的字节序是大端还是小端?
字节序字节序是指多字节数据在计算机内存中存储或者网络传输时各字节的存储顺序。大端字节序( Big endian)大端存储模式是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中。小端字节序(Little endian)小端存储模式是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中。...原创 2019-10-03 18:00:37 · 198 阅读 · 0 评论 -
C语言-创建一个数组,实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。
1.创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。#include<stdio.h>#include<string.h>void Init(int arr[], int len){ int i = 0; for (i = 0; i < len...原创 2019-07-25 16:29:04 · 894 阅读 · 0 评论 -
编写代码,演示多个字符从两端移动,向中间汇聚。
#include<stdio.h>#include<string.h>#include<windows.h>int main(){ char arr1[] = "welcome to shanxi"; char arr2[] = "*****************"; int left = 0; ...原创 2019-10-04 18:11:54 · 137 阅读 · 0 评论 -
写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回 - 1.(折半查找)
#include<stdio.h>int Binsearch(int key, int arr[], int len){ int left=0; int right = len-1; while (left <= right) { int mid = (left + right) / 2; if (arr[mid] > key) { right...原创 2019-10-03 20:17:41 · 79 阅读 · 0 评论 -
求出0~999999之间的所有“水仙花数”并输出。
1.求出0~999999之间的所有“水仙花数”并输出。“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身。在数论中,水仙花数(Narcissistic number)也称为自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),是指一N位数,其各个数之N次方和等于该数。#include<stdio.h>#include<math.h&...原创 2019-07-22 13:59:32 · 279 阅读 · 0 评论 -
typedef和#define的区别
typedef与define的区别1、在执行时间上关键字typedef在编译时处理,有类型检查的功能;#define则是宏定义,在预处理阶段(也就是在编译之前)进行简单的字符串替换,不进行任何检查2、功能上typedef用来定义类型的别名,定义与平台无关的数据类型,与struct的结合使用;#define不只是可以为类型取别名,还可以定义常量,变量和编译开关等。3、作用域上#defin...原创 2019-07-19 16:08:05 · 135 阅读 · 0 评论 -
C语言简单实现三子棋小游戏
游戏规则:三子棋是一种民间传统游戏,又叫九宫棋、圈圈叉叉、一条龙等。游戏是在一个3*3的棋盘里面下棋的。只要有三个一样的连成一条线,就表示有一方胜出;如果下完了9个格子还没有玩家胜出,游戏为平局。实现思路:1.初始化棋盘数组2.绘制棋盘3.玩家下棋4.电脑下棋5.判断输赢创建头文件game.h #ifndef __GAME__H_ #define __GAME__...原创 2019-07-29 23:21:57 · 117 阅读 · 0 评论 -
C语言实现猜数字游戏
1.完成猜数字游戏。 #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #include<stdlib.h> #include<time.h> #include <string.h> void Menu() { printf("*******欢迎来到猜数字...原创 2019-07-24 15:16:47 · 234 阅读 · 0 评论