%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. nodejs入门demo

    demo的实例引用自:http://www.runoob.com/nodejs/nodejs-event.html, 官方文档:https://nodejs.org/dist/latest-v6.x/ ...

  2. Grunt.js 上手

    Official Site gruntjs.org/docs/getting-started.html 或者看http://tgideas.qq.com/webplat/info/news_versi ...

  3. Oracle不能导入空表解决方案

    C:\Users\Administrator>sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on 星期日 8月 17 1 ...

  4. 射频识别技术漫谈(13)——Mifare S50与Mifare S70

    Mifare S50和Mifare S70又常被称为Mifare Standard.Mifare Classic.MF1,是遵守ISO14443A标准的卡片中应用最为广泛.影响力最大的的一员.而Mif ...

  5. C#引用非托管.dll

    C#里调用非托管的Dll 今天花了一些精力来调查了一下C#里调用非托管的Dll,C#里调用非托管的Dll要使用P/Invoke平台调用技术, 这里先简单介绍一下P/Invoke平台调用技术.    由 ...

  6. C++访问权限的问题

    以前一直认为对于类中的private数据成员,只有调用该方法的对象才能更能访问自身的私有成员,其他的类在该成员函数(公共接口)中也无法调用自身的私有成员,今天看到<c++ prime plus& ...

  7. CERC 2013 Magical GCD

    题目大意如下:给定一个序列,每个序列有值xi,现给定t个数列,对于每个长n的数列,求一段[l,r]使 [r-l+1]*gcd(l,r)最大,gcd(l,r)指的是该连续区间的最大公约数. 不难想到n^ ...

  8. TMT行业分析师

    诚聘英才 - 传媒梦工场 TMT行业分析师 工作经验:  2年以上 发布日期:  2013-01-04 最低学历:  本科 管理经验:  否 工作性质:  全职 招聘人数:  1人 职位类别:  金融 ...

  9. Ants(思维)

    Ants Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 12893   Accepted: 5637 Description ...

  10. c#第五次作业---正文提取

    1.正文文本 1.正文文本 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFC ...