Chinaunix首页 | 论坛 | 博客
  • 博客访问: 62576
  • 博文数量: 6
  • 博客积分: 500
  • 博客等级: 下士
  • 技术积分: 146
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-23 14:35
文章分类
文章存档

2012年(3)

2009年(3)

我的朋友

分类: C/C++

2009-09-07 22:59:51

译注:翻译本文的目的仅仅是供平时学习所用,文章版权归原作者所有;本文可以被用作一切非商用目的,但请注明出处;如果将本文用作商用目的,一切后果使用者自负,与本人无关。
 
一、移植C程序到C++程序
1.1 字符常量
【笔记】
 在C语言中,字符常量的类型为int类型,但在C++语言中,字符常量的类型为char类型。
 
【范例】
 i = sizeof('a');
 在C语言中,i的值将被赋予sizeof(int)的结果(通常情况下是一个大于1的值),但在C++语言中,i将被赋予sizeof(char),也就是将1赋值给i.
 
【准则】
 在将C语言移植到C++程序时,请重写那些依赖字符常量的大小的表达式,避免得到错误的结果。
 
【代码示例】
C语言:

/*Cdemo.c*/
#include <stdio.h>
#include <stdlib.h>

void checkCharSize()
{
    int size = sizeof('a');
    size = printf("size = %d\n", size);
    return ;
}

int main()
{
    checkCharSize();
    return 0;
}

运行结果:

C++语言:

/*CPlusDemo.cpp*/
#include <iostream>

using namespace std;

void checkCharSize()
{
    int size = sizeof('a');
    cout<<"size = "<

    return ;
}

int main()
{
    checkCharSize();
    return 0;
}

运行结果:

阅读(1402) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:Big Endian和Little Endian

给主人留下些什么吧!~~