关于字符常量问题:

#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. nodejs koa框架下载和导入excel

    ac.js const service = require("../service/model.service"); const urlencode = require(" ...

  2. vue侦听器 - watch

    使用watch来侦听data中数据的变化,watch中的属性一定是data 中已经存在的数据. 当需要监听一个对象的改变时,普通的watch方法无法监听到对象内部属性的改变,只有data中的数据才能够 ...

  3. java springboot 指定运行端口

    java springboot 指定运行端口 方法1: 修改源代码里的"\src\main\resources\application.properties" 文件,增加或修改 s ...

  4. “Newtonsoft.Json”已拥有为“Microsoft.CSharp”定义的依赖项。

    安装较低版本的Newtonsoft.Json: Newtonsoft.Json官网:https://www.nuget.org/packages/Newtonsoft.Json/ Install-Pa ...

  5. vue bus传参

    新建一个js文件,命名为bus.js.bus.js文件的内容为: import Vue from 'vue' const bus = new Vue() export default bus 页面de ...

  6. Do not access Object.prototype method 'hasOwnProperty' from target object

    hasOwnProperty 判断对象是否为空 在使用 hasOwnProperty 判断对象是否为空时遇到了一下问题,总结一下 // Do not access Object.prototype m ...

  7. 支付宝签名和验签使用JSONObject是最优解。json字符串顺序和==符号都一致演示代码

    支付宝签名和验签使用JSONObject是最优解.json字符串顺序和==符号都一致演示代码 支付宝spi接口设计验签和返回结果加签注意点,支付宝使用JSONObject对象https://www.c ...

  8. MacOSX 运行Unity卡顿 [gethostname]

    用MacbookPro 32G i7 独显 的高配打开项目发现异常卡顿, Win平台没有问题 打开Unity的Profiler DeepProfiler. 发现完全是卡在 dns.gethostnam ...

  9. 在C#中进行单元测试

    单元测试 前言 时隔多个月,终于抽空学习了点新知识,那么这次来记录一下C#怎么进行单元测试,单元测试是做什么的. 我相信大部分刚毕业的都很疑惑单元测试是干什么的?在小厂实习了6个月后,我发现每天除了写 ...

  10. Ubuntu 安装 gitweb + Apache2

    背景 之前已经使用了gerrit进行代码管理,但是在有些代码由于内部技术管理不当而丢失了Review记录. 因此找到了通过gitweb弥补的问题. 做法 安装 sudo apt-get install ...