C语言基础
翁恺老师的《C语言程序设计》,《C语言程序设计进阶》笔记
Try_again_once
每天都要元气满满
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C 基础知识回顾
sizeof 属于静态运算符,结果在编译时刻确定int j=1;printf("sizeof(++j)=%d\n",sizeof(++j));//sizeof(++j)=4printf("j=%d\n",j);//j=1强制类型转换,产生新的值。不改变原来值的类型和大小double i=10.1;int j=(int)i;printf("i=%f\n",i);//i=10.100000printf("j=%d\n",j);//j=10数组的集成初始化int a[]={0,.转载 2020-08-21 22:58:02 · 365 阅读 · 0 评论 -
C语言 链表、队列、栈
链表实例一问题:存入一连串整数遇到-1结束#include<stdio.h>#include<stdlib.h>//节点声明 typedef struct _node{ int value; struct _node *next;}Node;int main(){ Node *head=NULL;//节点头 int number; do...原创 2020-02-16 19:13:45 · 247 阅读 · 0 评论 -
C语言 标准头文件(.h文件)
结构#ifndef _HEAD_#define _HEAD_#include "node.h"typedef struct _list{ Node*head; Node*tail;}List;#endif作用避免二次声明原创 2020-02-19 09:05:28 · 719 阅读 · 0 评论 -
C语言 位运算及在单片机上使用方法
位运算按位与 (&)定义:(X)i=1并且(Y)i=1,则(X&Y)=1,否则为0作用:使某一位或几位为0;取一个数中的一段#include<stdio.h>void _din(int number)//输出一个十进制数的二进制形式 { unsigned int mask=1u<<31; while(mask){ printf(...原创 2020-02-18 22:14:40 · 873 阅读 · 0 评论 -
C语言 文件打开
文件打开和编辑实例#include<stdio.h>#include<string.h>int _filesize(FILE*stream){ int len; fseek(stream,0L,2); //移动光标到文档尾部 len=ftell(stream); //返回光标距离文件头部的字节数 fseek(stream,0L,...原创 2020-02-18 16:54:00 · 275 阅读 · 0 评论 -
C语言 输出、输入格式控制、字符串输入和重定位
输出与输入格式控制输出格式控制输出格式:printf( % [flag] [width] [precision] [hIL] type)[hIL]#include<stdio.h>int main(){ printf("sizeof(char)=%ld\n",sizeof(char)); //sizeof(char)=1 =>256 printf("siz...原创 2020-02-18 15:23:10 · 540 阅读 · 0 评论 -
编译预处理
大程序的编译过程预处理编译汇编链接.c 项目源文件.i 替换头文件后的源文件.s 汇编语言.o 二进制机器语言.out 可执行文件一个 .c 文件称为一个编译单元一个项目中包含许多.c和.h文件预处理作用:将项目源文件 (.c文件) 中的预处理指令进行替换预处理指令宏(#define)#include#define(宏)定义:#define 名字 值...原创 2020-02-17 14:50:41 · 185 阅读 · 0 评论 -
C语言 全局变量与静态本地变量
全局变量定义全局变量:定义在函数外部的变量#include<stdio.h>int gA=10; //全局变量 void f(){ printf("f %d",gA); //f 10}int main(){ printf("main %d\n",gA);//main 10 f(); return 0;}初始化没有初始化的全局变量自动补...原创 2020-02-16 22:26:14 · 324 阅读 · 0 评论 -
Dev C++使用小技巧
快捷键中断运行程序(Windos) Ctrl+Z(Unix) Ctrl+Dgetchar()函数中断(Windos) Ctrl+C原创 2020-02-16 19:24:23 · 370 阅读 · 0 评论 -
C语言 函数的参数
C语言 函数的参数只是值(包括常值,地址值)传入 地址值 实例#include<stdio.h>void _test(int*q){ printf("1_test is q=%p\n",q); //1_test is q=000000000062FE14 *q=1; //改变a的值 q=NULL; printf("2_test is q=%p\n...原创 2020-02-16 13:33:24 · 492 阅读 · 0 评论 -
C语言union(联合)
unionunion类似于结构,联合成员使用同一片内存,union的所占字节数与最大成员相同同一时间只有一个成员有效,所以初始化联合变量时只初始化第一个成员#include<stdio.h>union number{ long long i; char s[sizeof(int)];};int main(){ long long j; union n...原创 2020-02-15 13:48:41 · 346 阅读 · 0 评论 -
C语言结构
结构组成struct 结构类型名{ 结构成员类型 结构成员; };struct 结构类型名 结构变量名;结构声明1. 声明了point的结构类型,然后 定义了两个point结构的变量p1,p2struct point{ int x; int y;};struct point p1,p2;2. 定义了两个结构变量p1,p2struct{ int x; in...原创 2020-02-15 11:23:13 · 350 阅读 · 0 评论 -
C语言枚举
枚举使用举例申请连续字符常量const int red=10;const int yellow=11;const int green=12;int main(){ int n,color; scanf("%d",&n); switch(n){ case 0:color=red; break; case 1:color=yellow; ...原创 2020-02-15 10:12:56 · 264 阅读 · 0 评论 -
C语言 getchar与putchar
getchar函数原型:int getchar (void)putchar函数原型:int putchar(int c)getchar将shell输入按字符读入,同时返回字符对应数值putchar(a) 将a按字符输出,同时返回a int a=getchar(); //1 int b=putchar(a); //1 printf("\n"); printf("a=%d\n...原创 2020-02-14 20:23:20 · 351 阅读 · 0 评论 -
C语言中的指针
指针使用场景函数返回多个值此时可以使用函数返回值记录函数运算状态(正常,不正常)使用指针带回需要的返回值用于正常运算int devision(int a,int b,int *c){ int ret=0; if(b!=0){ ret=1; *c=a/b; } return ret;}int main(){ int a,b,c; scanf("%d...原创 2020-02-14 20:06:50 · 338 阅读 · 0 评论 -
C语言字符串函数使用技巧
字符串拷贝 char*s1="helloabc"; char*s2=(char*)malloc(strlen(s1)+1); printf("strcpy(s2,s1)=%s\n",strcpy(s2,s1)); //strcpy(s2,s1)=helloabc printf("s2=%s\n",s2); //s2=helloabc free(s...原创 2020-02-14 14:57:53 · 266 阅读 · 0 评论 -
C语言字符串常用函数
strlen函数原型:int strlen(const char*s) char *a="hall";//定型字符串 char *b="hello"; char c[9]="hello";//灵活字符串 char d[]="ab"; printf("sizeof(a)=%d\n",sizeof(a)); //sizeof(a)=8 printf("strlen(a)=%d\n",...原创 2020-02-13 21:52:31 · 331 阅读 · 0 评论 -
天梯赛座位分配
#include<stdio.h>int main() { int n;//参赛学校数 int i,j,k;//i:学校编号、j:队编号、k:人在队中编号 scanf("%d",&n); int a[n];//记录每个学校的参赛队伍数 for(i=0; i<n; i++) { scanf("%d",&a[i]); } int ma...原创 2019-04-22 16:02:30 · 443 阅读 · 0 评论 -
printf(括号里的故事之一)
printf(括号里的故事之一)“,”之间的运算顺序——从右至左 int i=1; printf("%d %d %d",i++,i++,i++); //结果为 3 2 1常见情况① 逗号之间总体上从右至左,在括号内从左至右int i=1; printf("%d %d %d",(i++,i++),i++,i++);//结果为 4 2 1②单目运算符的优先级较高,同等优先级...原创 2019-03-21 13:14:33 · 1675 阅读 · 0 评论
分享