%d  按照十进制整形数打印;

  %o  按照八进制整形数打印;

  %x  按照十六进制整形数打印;

  %c  表示字符

  %s  表示字符串

  %%  表示%本身打印;

  %ld  long型输出

”幻数“:  #define   名字 替换文本

      #define  NUM 100

++i, 比i++更精炼:

  两者的区别:++i,不会产生一个中间寄存器变量来保存变量;

        i++,产生一个寄存器变量来保存i在把i+1赋值给i;

在C语言中,所有参数都是“通过值”传递的,也就是说,传递给被调用函数的参数值存放在临时变量中,而不是存放在原来的变量中;(是一个简单的copy过程);

  被调用函数不能直接修改主调函数中变量的值,而只能修改其私有的临时副本的值;

关键点:指针

  指针只能指向某种特定类型的对象,也就是说,每个指针都必须指向某种特定的数据类型。

  (一个例外:指向void类型的指针可以存放指向任何类型的指针,但它不能间接引用其自身)

字符串常量最常见的用法是作为函数参数:

    printf("hello,  world\n");

当类似于这样的一个字符串出现在程序中,实际上是通过 字符串指针访问该字符串的;在上述语句中,printf函数接受的是一个指向字符数组第一个字符的指针。也就是说,字符串常量可通过一个指向其第一个元素的指针访问;

C语言没有提供将整个字符串作为一个整体进行处理的运算符;

  下面两个定义之间有很大的差别:

    char amesage[ ] = " now  is  the  time ";  //字符串保存在栈区;,函数退出的时候就释放掉了;在函数调用时候要“警惕”;

    char *pmessage =  "now is  the  time";   //字符串保存在静态数据区;在整个应用程序退出时释放;pmessage指向的是一个常量;

上述声明中,amessage是一个仅仅足以存放初始化字符串以及空字符'\0'的一维数组;数组中的单个字符可以进行修改;

但amessage始终指向同一个存储位置,另一方面,pmessage 是一个指针,其初值指向一个字符串常量,之后它可以被修改以指向

其它地址。但如果试图修改字符串的内容,结果是没有定义的;

  

amessage[2] = 'G';  //ok
    //pmessage[3] = 'G';  //error
 printf("%c\n", pmessage[3]);

C程序设计语言之一的更多相关文章

  1. 操作系统和程序设计语言的API使用的字符编码分析

     1.Java的运行环境中,String是什么编码? 使用java做程序设计语言,字符编码是和jvm相关的,和操作系统无关. java默认的编码是jvm在安装的时候就确定了的,它是根据你的系统的环境确 ...

  2. python程序设计语言笔记 第一部分 程序设计基础

    1.1.1中央处理器(CPU) cpu是计算机的大脑,它从内存中获取指令然后执行这些指令,CPU通常由控制单元和逻辑单元组成. 控制单元用来控制和协调除cpu之外的其他组件的动作. 算数单元用来完成数 ...

  3. 扩展《C程序设计语言》练习2-3程序通用性

    最近开始自学C语言,在看K&R的<C程序设计语言>.练习2-3要求写一个函数,将输入的十六进制数字字符串转换成与之等价的整数值,配套答案没有扩展程序的通用性,所以我就稍微改造改造. ...

  4. 清风注解-Swift程序设计语言:Point11~15

    目录索引 清风注解-Swift程序设计语言 Point 11. 数值型字面量 代码事例: let decimalInteger = // 十进制的17 let binaryInteger = 0b10 ...

  5. 清风注解-Swift程序设计语言:Point6~10

    目录索引 清风注解-Swift程序设计语言 Point 6. 输出常量和变量 代码事例: // 输出的内容会在最后换行 println("hello, world") // 输出的 ...

  6. 清风注解-Swift程序设计语言:Point1~5

    目录索引 清风注解-Swift程序设计语言 Point 1. Swift 风格的"Hello, world" 代码事例: println("Hello, world&qu ...

  7. 清风注解-Swift程序设计语言

    前言 Apple 发布了全新的 Swift 程序设计语言,用来开发 iOS 和 OS X 平台的应用程序.其目的不言而喻:就是为了给老迈的 Objective-C 一个合适接班人!因此,不难预见,未来 ...

  8. C程序设计语言(第二版)习题:第一章

    第一章虽然感觉不像是个习题.但是我还是认真去做,去想,仅此而已! 练习 1-1 Run the "hello, world" program on your system. Exp ...

  9. Oberon程序设计语言简介

    Oberon奥伯龙是一种通用编程语言,也是一种同名操作系统(由Oberon语言开发,且参考过贝尔实验室的新一代网络操作系统Plan9),是由原Pascal程序设计语言的发明者Niklaus Wirth ...

  10. awk程序设计语言之-awk基础

    awk程序设计语言之-awk基础 http://man.linuxde.net/ 常用工具命令之awk命令 awk是一种编程语言,用于在Linux/Unix下对文本和数据处理.数据可以来自标准输入(s ...

随机推荐

  1. C++ : 类型的别名和对象的别名

    #include <iostream>using namespace std; class human{public:    void Talk();    ~human(){cout&l ...

  2. PHP解析和生成xml(DOMDocument版)

    上次和大家分享了SimpleXML操作xml的一些知识,但是php中除了simplexml还有DOMDocument,这次就着重来看看DOMDocument的用法,还是把生成xml和解析xml分开写 ...

  3. JavaScript 堆

    1.IE中不兼容ajax中data最后一个参数加逗号,其余chrome Firefox均支持. code: $("document ").ready(function() { $( ...

  4. python函数any()与all()

    any(iterable) all(iterable) any()与all()函数的区别,any是任意,而all是全部. 版本:该函数适用于2.5以上版本,兼容python3版本. any(itera ...

  5. jmeter cookie管理器 使用方法---新手学习记录1

    首先得抓包: 我已post方法为例: POST /api/datasources/lemontest/jaql HTTP/1.1 Host: 192.168.1.107:8081 Content-Le ...

  6. C# 读书笔记之访问虚方法、重写方法和隐藏方法

    C#允许派生类中的方法与基类中方法具有相同的签名:基类中使用关键字virtual定义虚方法:然后派生类中使用关键字override来重写方法,或使用关键字new来覆盖方法(隐藏方法). 重写方法用相同 ...

  7. contains 和 ele.compareDocumentPosition确定html节点间的关系

    ~~~ nodeA.contains(nodeB) //ie ,   nodeA.compareDocumentPosition(nodeB) //firefox opera 1.DOMElement ...

  8. 一个高效过滤非UTF8字符的C函数(也可用来判断是否utf8)

    /* UTF-8 valid format list: 0xxxxxxx 110xxxxx 10xxxxxx 1110xxxx 10xxxxxx 10xxxxxx 11110xxx 10xxxxxx ...

  9. perl5 第二章 简单变量

    第二章 简单变量  by flamephoenix 一.整型 二.浮点数 三.字符串 基本上,简单变量就是一个数据单元,这个单元可以是数字或字符串.一.整型 1.整型   PERL最常用的简单变量,由 ...

  10. Shortest Prefixes(trie树唯一标识)

    Shortest Prefixes Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 15948   Accepted: 688 ...