第十章  数组和指针

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. java常量池詳解

    一.相关概念 什么是常量用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量.实例变量和局部变量,分别表示三种类型的常量. Class文件中的常量池在Clas ...

  2. 修改nopCommerce中的实体

                               对已有实体增加一个属性(对Category增加一个SomeNewProperty)   最近在研究nopcommerce,这里是对官网上文档的学习 ...

  3. Oracle:控制语句 IF..ELSIF语句、CASE语句、FOR循环语句

    --多重if语句(注意点:BEGIN END ,IF 条件 THEN,ELSIF 条件 THEN,ELSE... END IF)BEGIN IF FALSE THEN DBMS_OUTPUT.put_ ...

  4. “此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”的问题的解决

    虚拟机使用的是VMware Workstation,并且首次在虚拟机体验64 位系统.在新建好虚拟机,运行时候就出现了VMware Workstation 的提醒:此主机支持 Intel VT-x,但 ...

  5. 【开发技术】JAutodoc使用指南

    JAutodoc使用指南 下载地址:http://sourceforge.net/projects/jautodoc/?source=directory 使用方法:http://wenku.baidu ...

  6. 新手数据比赛中数据处理方法小结(python)

    第一次参加,天池大数据竞赛(血糖预测),初赛排名1%.因为自己对python不熟悉,所以记录一下在比赛中用到的一些python方法的使用(比较基础细节,大佬绕道): 1.数据初探 data.info( ...

  7. 解决 vmware workstations 14 开启虚拟机黑屏

    某些朋友在使用vmware workstations 14创建或者开启虚拟机时发现黑屏,但其实系统的正常启动的,只是无画面显示. 1.以管理员方式启动命令行 2.修复LSP 在CMD中输入 netsh ...

  8. AF_INET 和PF_INET区别;AF_LOCAL PF_LOCAL 区别.

    从字面理解: AF_INET = Address Format, Internet = IP Addresses PF_INET = Packet Format, Internet = IP, TCP ...

  9. js 原型规则与示例

    五大规则 1. 所有的引用类型( 数组 对象 函数 ) 都是 具有对象特性即自由拓展属性 (除了 "null")意外 2. 所有的引用类型(数组 对象 函数 ) 都有一个 prot ...

  10. 云计算之路-阿里云上:部分服务器未及时续费造成docker swarm集群故障

    非常非常抱歉,由于我们的疏忽 —— docker swarm 集群中的 2 台服务器没有及时续费,造成在夜里0点被自动关机,从而引发整个 docker swarm 集群故障,造成今天凌晨 0:30 ~ ...