关于字符常量问题:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void string01 () {
char * string1 = "Hello C language";
printf("%s\n", string1);
// string1[2] = 'A'; 修改无效
printf("%s\n", string1); char string2[] = "Hello C language"; // 字符数组
printf("%s\n", string2);
string2[2] = 'A';
printf("%s\n", string2);
} int main() {
string01();
return 0;
}

纠正数组排序的函数封装,搞懂原因:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 选择法排序
void selectSorting() {
// 样例数组
int array[] = {1, 10, 8, 5, 9, 3, 6, 4, 2, 7}; const int SIZE = sizeof(array) / sizeof(*array); // sizeof(array[0]) \ sizeof(int) for (int i = 0; i < SIZE; ++i) {
printf("[%d]\t", array[i]);
} printf("\n - - - - - - - - - - -\n"); // ----------------------------------------------- int temp; for (int j = 0; j < SIZE - 1; ++j) {
for (int i = j + 1; i < SIZE; ++i) {
if (array[j] > array[i]) {
// swap
temp = array[j];
array[j] = array[i];
array[i] = temp;
}
}
} for (int i = 0; i < SIZE; ++i) {
printf("[%d]\t", array[i]);
} printf("\n");
} // 封装的函数
void selectSorting2(int * array, int size) {
// 转换为指针之后无法获取数组的个数信息, 只能用形参注入进来
int temp; // 临时变量 交换用
for (int i = 0; i < size - 1; ++i) {
for (int j = i + 1; j < size; ++j) {
if (array[i] > array[j]) {
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
}
void printArray(int * array, int size) {
printf("[");
for (int i = 0; i < size; ++i) {
if (i == size - 1) {
printf("%d]", array[i]);
break;
}
printf("%d,", array[i]);
}
printf("\n");
} void test() {
int array[] = {1, 10, 8, 5, 9, 3, 6, 4, 2, 7};
const int SIZE = sizeof(array) / sizeof(*array);
printArray(array, SIZE);
selectSorting2(array, SIZE);
printArray(array, SIZE);
} int main() {
// selectSorting();
// test();
return 0;
}

【C】Re11 剩下的笔记的更多相关文章

  1. 不可被忽视的操作系统( FreeRTOS )【1】

    把大多数人每个星期的双休过过成了奢侈的节假日放假,把每天23点后定义为自己的自由时间,应该如何去思考这个问题 ? 双休的两天里,不!是放假的两天里,终于有较长的时间好好的学习一下一直断断续续的Free ...

  2. 剑指Offer的学习笔记(C#篇)-- 孩子们的游戏(圆圈中最后剩下的数)

    题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此.HF作为牛客的资深元老,自然也准备了一些小游戏.其中,有个游戏是这样的:首先,让小朋友们围成一个大圈.然后,他随机指 ...

  3. Linux实战教学笔记02:计算机系统硬件核心知识

    标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 互联网企业常见服务器介绍 1.1 互联网公司服务器品牌 - DELL(大多数公司,常用) - HP - IBM(百度在用) 浪潮 联想 航天联 ...

  4. javascript权威指南笔记

    最近每天工作之余看下js的细节部分,时间不是很多,所以看的进度也不会太快,写个博客监督自己每天都看下. 以前不知道的细节或者以前知道但是没注意过的地方都会记录下来,所以适合有一定基础的,不适合零基础新 ...

  5. boost.python笔记

    boost.python笔记 标签: boost.python,python, C++ 简介 Boost.python是什么? 它是boost库的一部分,随boost一起安装,用来实现C++和Pyth ...

  6. redis 学习笔记(6)-cluster集群搭建

    上次写redis的学习笔记还是2014年,一转眼已经快2年过去了,在段时间里,redis最大的变化之一就是cluster功能的正式发布,以前要搞redis集群,得借助一致性hash来自己搞shardi ...

  7. 4.View绘制分析笔记之onDraw

    上一篇文章我们了解了View的onLayout,那么今天我们来学习Android View绘制三部曲的最后一步,onDraw,绘制. ViewRootImpl#performDraw private ...

  8. 1.Android 视图及View绘制分析笔记之setContentView

    自从1983年第一台图形用户界面的个人电脑问世以来,几乎所有的PC操作系统都支持可视化操作,Android也不例外.对于所有Android Developer来说,我们接触最多的控件就是View.通常 ...

  9. OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置

    摘要: 由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的, ...

  10. 关于DOM的一些笔记(一)

    这篇文章整理的是关于DOM的一些学习笔记,这样以后查找起来也方便许多.(以前js看的是入门经典和DOM编程艺术,现在在看高级程序设计,本文就以高级程序为主整理) 1.Node (1):类型 node. ...

随机推荐

  1. 在 Excel 中使用 Python 自动填充公式

    安转Python包的国内镜像源 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple 阿里云 https://mirrors.aliyun.com/pypi/si ...

  2. C#.NET 国密 BASE64编码的私钥提取16进制私钥 (锦州银行、建行轻应用)

    C#.NET 国密 BASE64编码的私钥提取16进制私钥 (锦州银行.建行轻应用), 从BASE64编码的公钥中提取16进制字符串公钥, 从BASE64编码的私钥中提取16进制字符串私钥, 锦州银行 ...

  3. HP惠普战66电源黄灯闪烁无法充电

    HP惠普战66电源黄灯闪烁无法充电 TYPE-C PD 无法充电. 解决办法:关机状态下,拔除外部设备,长按电源键30秒以释放主板静电,再插电源线可以开机.

  4. C# JAVA UrlEncode

    C#  JAVA urlencode 默认是不兼容的.C# 需要encode的部分是小写.JAVA 需要encode的部分是大写. /// <summary> /// java UrlEn ...

  5. 使用 OpenTelemetry 构建可观测性 02 - 埋点

    这是讲解 OpenTelemetry 系列博客的第二篇.在上一篇博客中,我们介绍了 OpenTelemetry 是什么以及由什么组成.现在我们将讨论如何使用 OTel 准确收集遥测数据和链路追踪数据. ...

  6. 【现代 CSS】标准滚动条控制规范 scrollbar-color 和 scrollbar-width

    Chrome 在 121 版本开始,原生支持了两个滚动条样式相关的样式 scrollbar-color 和 scrollbar-width. 要知道,在此前,虽然有 ::-webkit-scrollb ...

  7. 雪花算法(SnowFlake)

    引言 唯一ID可以标识数据的唯一性,在分布式系统中生成唯一ID的方案有很多,常见的方式大概有以下三种: 依赖数据库,使用如MySQL自增列或Oracle序列等. UUID随机数 snowflake雪花 ...

  8. vite+vue3+ts+elementPlus前端框架搭建 [一]

    记录下搭建vite + vue3 + ts + elementPlus项目的过程及遇到的问题. 建议使用pnpm安装依赖,npm切换到pnpm 链接地址:[https://www.pnpm.cn/in ...

  9. vue2 实现可拖拽悬浮球

    实现效果 相关代码 点击查看代码 <template> <div class="float-box"> <div class="button ...

  10. Linux修改dmesg 显示大小

    背景 由于在调试的时候没有串口,而通过dmesg打印的内容发现其中有截断的现象. 因此为了方便调试.将有关的缓冲区加大. 原理 Linux内核中打印内核消息时用到了一个环形缓冲区. 这个缓冲区的大小由 ...