当前位置: 首页 > news >正文

js 网站首页下拉广告南宁市网站开发建设

js 网站首页下拉广告,南宁市网站开发建设,室内设计考研有哪些学校,亿通网站建设目录 前言 1. 基础语法 2. 流程控制 3. 函数 4. 数组与字符串 5. 指针(核心重点) 6. 内存管理 7. 结构体与联合体 8. 文件操作 9. 预处理器 10. 高级特性 内存布局图解 前言 在进行程序代码开发之前,需要掌握好C语言各个模块之间…

 目录

前言

1. 基础语法

2. 流程控制

3. 函数

4. 数组与字符串

5. 指针(核心重点)

6. 内存管理

7. 结构体与联合体

8. 文件操作

9. 预处理器

10. 高级特性

内存布局图解


前言

在进行程序代码开发之前,需要掌握好C语言各个模块之间的内容。在TI开发板时,需要对C语言有更好的理解和应用,其中,主要考察的是对代码的操作和库函数的调用。因此,对于本次比赛内容,重新对C语言知识进行讲解。


1. 基础语法

模块内容示例要点
数据类型基本类型、派生类型int a; float b; char c;内存占用:char(1B) int(4B) float(4B) double(8B)
变量与常量变量声明/初始化、常量定义const int MAX=100;命名规则:字母/数字/下划线,区分大小写
运算符算术、关系、逻辑、位运算a & b; c << 2;优先级:`() > ! > 算术 > 关系 > && >> 赋值`
输入输出printf()/scanf()printf("%d,%f", num, f);格式符:%d整型 %f浮点 %c字符 


2. 流程控制

类型语法结构示例应用场景
条件语句

if-else switch-case

if(score>90) grade='A';
else if(score>60) grade='B';

| 多分支判断 |
循环结构 | for while do-while |

for(int i=0; i<10; i++){sum += i;
}

| 重复操作 |
跳转语句 | break continue goto |

while(1){if(error) break;
}

| 中断循环/函数返回 |


3. 函数

模块内容示例要点
函数定义返回值类型、参数列表
int add(int a, int b) {return a+b;
}

| 需先声明后使用 |
参数传递 | 值传递、地址传递 |

void swap(int *x, int *y) {int t=*x; *x=*y; *y=t;
}

| 地址传递可修改实参 |
递归函数 | 函数调用自身 |

int factorial(int n) {if(n<=1) return 1;return n*factorial(n-1);
}

| 需有终止条件,栈空间有限 |
作用域 | 局部变量、全局变量 | static int count; | static延长生命周期,限制作用域 |


4. 数组与字符串

类型声明方式操作注意事项
一维数组int arr[5];索引访问:arr[0]=10;下标从0开始,内存连续
多维数组int matrix[3][3];嵌套循环遍历行优先存储
字符数组char str[20];strcpy(s1,s2); strlen(s);'\0'结尾
字符串函数<string.h>
strcat(s1,s2); // 拼接
strcmp(s1,s2); // 比较

| 注意缓冲区溢出风险 |


5. 指针(核心重点)

概念语法示例应用场景
基本指针变量地址操作
int *p = &a;
*p = 20; // 修改a的值

| 间接访问变量 |
指针运算 | 算术运算、关系运算 | p++; p1-p2; | 数组遍历、内存操作 |
数组指针 | 指针与数组关系 |

int arr[5];
int *p = arr; // p等价&arr[0]

| 数组名是常量指针 |
函数指针 | 指向函数的指针 |

int (*funcPtr)(int);
funcPtr = &add;

| 回调函数、策略模式 |
多级指针 | 指针的指针 | int **pp = &p; | 动态二维数组 |


6. 内存管理

操作函数示例注意事项
静态分配编译时分配int arr[100];栈空间有限(通常1-8MB)
动态分配malloc/calloc
int *p = (int*)malloc(10*sizeof(int));

| 堆空间较大,需手动释放 |
内存释放 | free() | free(p); p=NULL; | 避免野指针 |
内存操作 | memset/memcpy |

memset(p, 0, 100); // 内存置0
memcpy(dest, src, size);

| 底层内存操作 |


7. 结构体与联合体

类型定义方式特点应用场景
结构体
struct Student {char name[20];int age;
};

| 不同数据类型的集合 | 数据封装 |
结构体指针 |

struct Student *s;
s->age = 20;

| 箭头运算符访问 | 动态结构体 |
联合体 |

union Data {int i;float f;
};

| 共享内存空间 | 节省内存、类型转换 |
枚举 |

enum Color {RED, GREEN=5, BLUE};

| 命名常量集合 | 状态机、选项设置 |


8. 文件操作

操作函数模式示例
打开文件fopen()"r"读 "w"写 "a"追加FILE *fp = fopen("data.txt","r");
读写数据fprintf/fscanf格式化I/O
fprintf(fp, "%d", num);
fscanf(fp, "%d", &num);

字符I/O | fgetc/fputc | 单个字符 | ch = fgetc(fp); |
行I/O | fgets/fputs | 字符串 | fgets(buf, 100, fp); |
关闭文件 | fclose() | 释放资源 | fclose(fp); |


9. 预处理器

指令功能示例应用场景
宏定义#define#define PI 3.14159常量定义、代码简化
条件编译#ifdef/#endif
#ifdef DEBUGprintf("Debug info");
#endif

10. 高级特性

特性说明示例应用
位字段紧凑存储布尔值
struct {unsigned int isReady:1;unsigned int hasData:1;
} status;

| 硬件寄存器操作 |
可变参数 | 不定参数函数 |

#include <stdarg.h>
void func(int n, ...) {va_list args;va_start(args, n);int val = va_arg(args, int);
}

printf()实现原理 |
内联函数 | inline关键字 | inline int max(int a, int b); | 减少函数调用开销 |
类型限定符 | const volatile | volatile int *reg; | 硬件编程、编译器优化控制 |


内存布局图解

+------------------+
|   代码区         | 程序指令(只读)
+------------------+
|   静态数据区      | 全局/静态变量
+------------------+
|       ↓ 堆       | 动态分配(malloc等)
|       ↑          |
+------------------+
|       ↓ 栈       | 局部变量、函数调用
|       ↑          |
+------------------+
|   命令行参数      | argc/argv
+------------------+


http://www.dtcms.com/a/585906.html

相关文章:

  • SolarEdge和英飞凌合作开发人工智能数据中心
  • asp.net core webapi------3.AutoMapper的使用
  • CCF LMCC人工智能大模型认证 青少年组 第一轮样题
  • 百度搜索不到asp做的网站全球知名购物网站有哪些
  • Android Studio 中 Gradle 同步慢 / 失败:清理、配置全攻略
  • Makefile极简指南
  • 信息系统项目管理师--论文case
  • win7 iis网站无法显示该页面网站上线准备
  • 华为防火墙基础功能详解:构建网络安全的基石
  • 北京网站定制设计开发公司宁波专业定制网站建设
  • 网站的后台怎么做调查问卷设计之家广告设计
  • WebRtc语音通话前置铃声处理
  • 使用XSHELL远程操作数据库
  • 淘宝客网站域名宜昌做网站哪家最便宜
  • 微信小程序中使用 MQTT 实现实时通信:技术难点与实践指南
  • Java computeIfAbsent() 方法详解
  • 做网站市场报价免费企业网站开源系统
  • 天元建设集团有限公司企业代码东莞做网站seo
  • Web前端摄像头调用安全性分析
  • 绵阳网站建设怎么做免费查公司
  • std之list
  • 前端:前端/浏览器 可以录屏吗 / 实践 / 录制 Microsoft Edge 标签页、应用窗口、整个屏幕
  • 做网站像美团一样多少钱中国最新军事消息
  • 软件项目管理实验报告(黑龙江大学)
  • 网络建设需求台州做网站优化
  • PostgreSQL一些概念特性
  • 宁夏建设厅网站6青岛网站建设公司好找吗
  • 社交营销可以用于网站制作行业吗怎样做建网站做淘客
  • 玩转Rust高级应用 如何让让运算符支持自定义类型,通过运算符重载的方式是针对自定义类型吗?
  • 基于Keras的MNIST手写数字识别卷积神经网络设计与实现