一段c++程序

#include<iostream>

#include<stdlib.h>

using std::cout;
using std::endl;
int main()
{
    const char ca[]={'h','e','l','l','o'};
    const char *cp=ca;
    while(*cp)
    {
       cout<<*cp<<endl;
       ++cp;
    }
    system("pause");
    return 0;
}

 

编译程序没有错误,但是不知道为什么每次运行结果都不一样????

 

2.  关于数组的动态释放空间

   C++语言为指针提供delete [] 表达式释放指针所指向的数组空间:

delete [] pia;

该语句回收了指针pia所指向的数组,把相应的内存返还给自由存储区。

 

3. 注意区别以下两点:

int *ip[4];  //array of pointers to int

int  (*ip)[4];  //pointer to an array of 4 ints

 

4. 算术表达式

21%-5;    //machine-dependent:result is 1 or -4

21/-5;    //machine-depended:result is -4 or -5

当只有一个操作数为负数时,求模操作结果值得符号可依据分子(被除数)或分子(除数)的符号而定。如果求模的结果随分子的符号,则除出来的值向零一侧取整;如果求模与分母的符号匹配,则除出来的值向负无穷一侧取整。

 

今天学习了primer的数组和指针部分,以及第五章表达式部分。

 

posted on 2013-06-28 16:57  花旁教主  阅读(259)  评论(0编辑  收藏  举报

导航