标签:
/** * 书本:【ThinkingInC++】 * 功能:函数内部的静态变量 * 时间:2014年9月17日18:06:33 * 作者:cutter_point */ #include "../require.h" #include <iostream> using namespace std; char oneChar(const char* charArray=0) { const static char* s; //自己主动初始化为0,这个const表示这个指针指向的是char类型的指针。 //不能变成其它的指针类型或变成非指针。地址能够变,类型不能变,并且这个仅仅初始化一次 if(charArray) { s=charArray; //地址能够随便赋值,可是*s不能改,并且仅仅初始化一次 return *s; } else require(s, "un-initialized s"); if(*s == '\0') return 0; return *s++; } char* a="abcdefghijklmnopqrstuvwxyz"; int main() { oneChar(a); char c; while((c=oneChar()) != 0) //后面s是静态的还是指向那个地方 cout<<c<<endl; return 0; }
标签:
原文地址:http://www.cnblogs.com/lcchuguo/p/5101694.html