第十章  数组和指针

1.const :保护变量不受改变,特别是在作为入参传入函数

对于变量:const 不能修改值

对于指针: const 可以修改值,但是不能修改指向对象

#include<stdio.h>

int main()
{
int arrays [] = {};
const int *p = arrays;
int i = ;
*(p+) = ;//error 不能通过编译 const 并不智能 for(;i < ;i ++)
{
printf(" %d \n",arrays[i]); }
}
#include<stdio.h>

int main()
{
int arrays [] = {};
const int *p = arrays;
int i = ;
// *(p+3) = 4;//error 不能通过编译 const 并不智能
*(arrays+) = ;
for(;i < ;i ++)
{
printf(" %d \n",*(p+i)); }
}

 

关于结构体的大小计算

#include<stdio.h>

typedef struct A_s
{
int a[]; }A; typedef struct data_s
{
int a ;
double dou;
char b[];
//char ch;
A d;
// int e;
char c;
}data; int main()
{
data data_1={};
printf("%d %d\n",sizeof(data) ,sizeof(data_1.d));
}
~

多次尝试后对于补位理解补齐一个最大的基本类型大小最大补为8。

#include<stdio.h>

typedef struct A_s
{
int a[]; }A; typedef struct data_s
{
short a ;
// double dou;
//char b[4];
//char ch;
// A d;
// int e;
char c;
}data; int main()
{
data data_1={};
printf("%d %d\n",sizeof(data) ,sizeof(A));
}

像这个补齐为4.

C primer Plus_part6的更多相关文章

  1. C Primer Plus 学习体会

    本月刚刚开始学习<C primer plus>,之前课上草草学过一遍,讲到指针就结束了.现在重新开始看感觉难度不大只是刚开始接触有些语言细节比较琐碎.学习这一周的体会如下: 诸多前辈推荐的 ...

  2. C++ Primer Plus 第六版笔记

    C++ Primer Plus 第六版笔记 关于对象声明的思考 转自:http://www.cnblogs.com/weiqubo/archive/2009/11/02/1930042.html C+ ...

  3. 《3D Math Primer for Graphics and Game Development》读书笔记2

    <3D Math Primer for Graphics and Game Development>读书笔记2 上一篇得到了"矩阵等价于变换后的基向量"这一结论. 本篇 ...

  4. 《3D Math Primer for Graphics and Game Development》读书笔记1

    <3D Math Primer for Graphics and Game Development>读书笔记1 本文是<3D Math Primer for Graphics and ...

  5. 再读《C++ Primer》——变量和基本类型

    刚上大学那时,几个室友一块买了本<C++ Primer>第4版,看了一遍后就没怎么碰了,偶尔拿出来翻翻,当作工具书使用.后来知道有第5版了,一直觉得内容差不多吧.直到最近,再读其中的一些内 ...

  6. C Primer Plus_第6章_循环_编程练习

    1.题略 #include int main(void) { int i; char ch[26]; for (i = 97; i <= (97+25); i++) { ch[i-97] = i ...

  7. C Primer Plus_第5章_运算符、表达式和语句_编程练习

    Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; ...

  8. C++Primer 5th 练习 12.19

    这阵子真是太忙了, 连续做了四个课设. 当然这并不能作为好久没写博客的借口, 没写博客的主要原因只有一个: 懒. 最近又开始回顾C++的语法与特性(据说C++就是一门需要反复回顾的语言),以及学习C+ ...

  9. [翻译]Primer on Cognitive Computing(认知计算入门)

    Source Kelly J., Primer on Cognitive Computing 20150216. 侵删,联系方式:zhoujiagen\@gmail.com. 按A candidate ...

随机推荐

  1. load和DOMContenLoaded的区别

    load和DOMContentLoaded的作用就是当页面加载完成的时候自动执行,但他们执行的时间点是不一样的. DOM文档加载步骤: (1)解析html结构 (2)加载外部脚本和样式表文件 (3)解 ...

  2. seaJS 模块加载过程分析

    先看一个seajs的官方example,  以下以seajs.use('main')为例, 解析加载mod main的过程 //app.html seajs.use("main") ...

  3. UIScrollerview的contentsize设置

    最近被同行的一个朋友问到一个问题"UIScrollerview上添加子控件,给子控件约束好布局之后,还需要给scrollerview重新设置contentsize吗?"于是想到了我 ...

  4. (Release Candidate)Candidate

    RC:(Release Candidate)Candidate是候选人的意思,用在软件或者操作系统上就是候选版本

  5. IOS开发之纯代码界面--基本控件使用篇 ┊

    http://www.cocoachina.com/bbs/read.php?tid=131516

  6. P2P视频模块

    P2P视频模块数据手册 公  司 : 深圳市万秀电子有限公司 网  站 : http://www.wanxiucx.com 总  机 : 0755-23215689 联系人: 张先生 手  机 : 1 ...

  7. strman--java8字符串工具类

    strman-java 是Java8的字符串处理库,它的灵感来自 dleitee/strman . Strmen-java 是一个字符串处理工具,你可以通过 maven 将它引入到项目中.除了 Jav ...

  8. 006-接收键盘的输入(read)

    read  -ptns   变量名 -p 在等待read输入的时候,显示的提示信息 -t 秒数,read等待用户输入的时间 -n read接收用户输入的字符数,只接收指定字符数,就会执行 -s 隐藏输 ...

  9. 无废话XML--DOM4J

    Dom4j  是一个易用的.开源的库,用于 XML ,XPath  和 XSLT .它应用于 Java  平台,采用了 Java  集合框架并完全支持 DOM ,SAX 和 和 JAXP .我们可以很 ...

  10. .Net Core部署到CentOS

    本文基于初次或再次尝试部署.Net Core应用到Linux服务器上,我尝试后自我总结的经验一个简单的Demo,尝试部署在Linux服务器上和跨服务器访问数据库. 一.环境介绍 1.本地使用Visua ...