摘要:
1 void main () 2 { 3 int c = 6; 4 int d = 7; 5 6 printf("%d,%d\r\n", c, d); 7 8 c ^= d; 9 d ^= c;10 c ^= d;11 12 printf("%d,%d\r\n", c, d); 13 } 阅读全文
摘要:
请信任程序员不要阻止程序员去做需要做的事情保持语言的小巧为每一种操作只提供一种方法就算不能保证可移植性,也要保证效率 阅读全文
摘要:
前面我们提到,当操作符的操作数类型不一致时,会发生类型转换,它负责把两个不同的操作数类型转换成同一种普通操作类型,转换后的类型,一般也就是结果类型。抛砖: printf (“%d”, sizeof ‘A’); 这行代码打印出存储一个字符字面值类型的长度。你敢确定它的结果是 1 吗?运行一下试试。你会发现它的结果是 4 (或者是你机器上int的长度)。字符常量的类型是int,根据提升规则,它由 char 转换为 int 。这个概念在 K&R 中是这样描述的: 在表达式中,每个 char 都被转换为 int ···注意所有位于位于表达式中的 float 都被转 阅读全文
摘要:
先抛砖: 1 char * const * (* next) ( );对于这种复杂的声明形式,你明白它的确切意思吗?C语言声明的优先级规则:A、声明从它的名字开始读取,然后按照优先级顺序依次读取。B、优先级从高到低依次是: 1、声明中被括号括起来的那部分 2、后缀操作符: 括号()表示这时... 阅读全文
摘要:
K&R C 采用无符号保留(unsigned preserving)原则,就是当一个无符号类型与int或更小的整型混合使用时,结果类型是无符号类型。 这是个简单的规则,与硬件无关。但是,真如下面的例子所展示的那样,它有时会使一个负数丢失符号位。ANSI C 采用值保留()原则,就是当把几个整型操作数像下面那样混合使用时,结果类型有可能是有符号数,也可能是无符号数,取决于操作数的类型的相对大小。 1 void main() 2 { 3 4 unsigned int i = 1; 5 int j = -1; 6 if (j < i) 7 { 8 ... 阅读全文
摘要:
1、访问方式不同 ⑴数组的下标引用(读一次内存) char ary[5] = "hello",c; ...... c = ary[2]; ⑵对指针的引用(读两次内存) char *P,c; ...... c = *p; ⑶对指针进行下标引用(读两次内存) char *p = "hello"; ...... c = p[2]; 2、在ANSI C中,初始化指针时所创建的字符常量(注意只能在char型时赋初值,如char *p = "hello";但是float *pip = 3.14;将无法通过编译)被定义为只读。如果试图通过指针修改这 阅读全文
摘要:
一、配置1、设置Tab键为插入空格,以适应和记事本文本对齐一致2、改变数字颜色,使其和变量区分开3、添加显示行号插件VC6LineNumberAddin⑴将VC6LineNumberAddin.dll移动到 %VC安装目录%\Microsoft Visual Studio\Common\MSDev98\AddIns 中⑵以管理员身份运行cmd⑶进入C:\Windows\system32>regsvr32 目录下⑷执行 regsvr32 "%VC安装目录%\Microsoft Visual Studio\Common\MSDev98\AddIns\VC6LineNumberAdd 阅读全文
摘要:
1、有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制。2、汇编指令 伪指令3、CPU通过总线控制接口,接口控制设备4、CPU对物理器件的操作,通过控制线发出内存读写命令,把他们都当作内存来对待。所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器,每个物理存储器在这个逻辑存储器中张有一个地址段,即一段地址空间。CPU在这段地址空间中读写数据,实际上就是在相对应的物理存储器中读写数据。5、内部总线实现CPU内部各个器件之间的联系,外部总线实现CPU和主板上其他器件的联系。6、mov ax,8226 mov bx,ax add ax,bx ax + bx = 1044CH ax . 阅读全文
摘要:
助记符条件( 执行 CMPA,B 之后的标志位)表达式无符号数JB/JNAECF=1ABJBE/JNACF=1orZF=1A≤B有符号数JL/JNGESF≠OFABJLE/JNGSF≠OForZF=1A≤B无符号数或有符号数JZ/JEZF=1A=B 阅读全文
摘要:
终于装好Fedora18了,中间由于分辨率问题,没有创建新用户,启动后发现没有用户,如下图:Fedora项目出于安全性考虑,在PAM模块中默认情况下禁止root用户登录图形界面,所以只好创建新用户了,按Ctrl+Alt+F2切换到tty2,登录root用户,(不要输密码 ),然后运行命令:useradd 用户名再运行:passwd 用户名接着根据提示输入密码后,新用户就创建好了,过程如下图:可以用新用户登录,如下图:删除用户,userdel -r lzy(userdel可删除用户帐号与相关的文件。若不加参数-r,则仅删除用户帐号,而不删除相关文件。),过程如下图: 阅读全文