隨筆-159  評(píng)論-114  文章-7  trackbacks-0
          g++ -c 編譯成為目標(biāo)文件

          g++ -o 編譯指定輸出文件名

             g++ Info_test_list.cc Info.cc -o Info_test

          如果是在windows上,使用Dev-C++,它支持ANSI-C比較好。

          #include <> 包含頭文件
          #include "" 自己的頭文件

             #include <iostream>
             using namespace std;

          頭文件:

          /usr/local/include/c++/3.2/

          g++自動(dòng)能找到標(biāo)準(zhǔn)頭文件。

          可以自己定義命名空間:

          namespace std{

          }

          #include <iostream>
          using namespace std;

          namespace czq{
             
          int var = 100;
          }


          int main()
          {
              cout 
          << czq::var << endl;
              
          return 0;
          }


          最后一行應(yīng)該有一個(gè)空行。

          在C++中表示字符串,有三種方法,string類,char* char name[]。

          char name[] = "John",這是一個(gè)字符串末位有一個(gè)'\0',也就是第五個(gè)字符。

          'J''o''h''n''\0'

          那么char str[5] 只能放四個(gè)字符。

          int main(int argc,char argv[])
          {

          }

          argc至少為1,因?yàn)閰?shù)個(gè)數(shù)包含可執(zhí)行文件本身。

          argv[0],可以用于檢查執(zhí)行文件名是否被修改,用于版權(quán)保護(hù)哦。

          =============================

          在C++中,只要不是0,就是真,那么0包括0、'\0'、NULL、false

          例子:猜數(shù):

          #include <iostream>
          using namespace std;

          int main()
          {
              unsigned 
          int t = time( NULL );//隨即數(shù)產(chǎn)生
              unsigned 
          int num = t * 37 % 100;
              unsigned 
          int data;
              
          int i;
              cout
          <<"input a number between 0~99:";
              
          for( i=0; i<10; i++ ){
                  cin 
          >> data;
                  
          if!cin ){//如果輸入流沒(méi)有讀到整型,那么就會(huì)設(shè)置錯(cuò)誤標(biāo)志
                      cout
          <<"Invalid number!\n";
                      cin.clear();
                      cin.ignore( 
          100'\n' );//忽略字符,最多100個(gè),遇到\n就結(jié)束忽略
                      
          continue;
                  }

                  
          if( data == num ){
                      cout
          <<"you got it!"<<endl;
                      
          break;
                  }

                  
          else if( data < num ){
                      cout
          <<"too small!"<<endl;
                  }

                  
          else
                      cout
          <<"too big!"<<endl;
                  cout
          <<"try again:";
              }

              
          if( i >= 10 )
                  cout 
          << "the answer is " << num << endl;
              
          return 0;
          }



          atoi函數(shù)可以轉(zhuǎn)換字符串變?yōu)檎麛?shù)。不成功為0

          #include <iostream>
          using namespace std;

          int main(int argc,char* argv[])
          {
              
          int score;
              
          char* p = "10000";
              
              score 
          = atoi(p);
              
              cout 
          << score << endl; 
              cin.
          get();
              cin.
          get(); 
              
          return 0;    
          }

           

          C++,只要定義變量,就會(huì)分配空間。只有純聲明性的東西才不會(huì)分配空間。

          int a;//這時(shí)就已經(jīng)分配了4個(gè)字節(jié)

          對(duì)于對(duì)象來(lái)說(shuō),創(chuàng)建對(duì)象有兩種途徑:1、直接定義  2、new 在堆空間

          int a = 0;這是初始化,C++大部分情況不會(huì)自己初始化,可能保存著不確定的值,需要程序員完成初始化。

          a = 9; 這是賦值,賦值與初始化是完全不同的概念,賦值操作實(shí)質(zhì)是進(jìn)行內(nèi)存數(shù)據(jù)的復(fù)制。初始化,定義時(shí)分配空間后給一個(gè)值而已。

          賦值與初始化的區(qū)別體現(xiàn)的更明顯 對(duì)象的初始化和賦值是完全不同的概念



          主站蜘蛛池模板: 黄梅县| 峨边| 宝鸡市| 阳山县| 柘城县| 阿拉善盟| 商南县| 邵东县| 科技| 临汾市| 石泉县| 吐鲁番市| 修武县| 体育| 九江县| 岳西县| 巴南区| 垫江县| 阿合奇县| 华坪县| 彭山县| 绿春县| 舞阳县| 万荣县| 仁怀市| 乐至县| 扎鲁特旗| 铜川市| 荔浦县| 蕲春县| 连山| 奉新县| 班玛县| 荃湾区| 武定县| 台湾省| 离岛区| 桃江县| 封开县| 伽师县| 滨海县|