C語言常用

宏的一些用法

#操作符
例如
#define str(x)  #x
如果在程序中輸入語句
str(testing)
最終展開形式將會是
"testing"

##操作符
例如
#define printx(n) printf("%d/n", x##n)
語句中的字符串“x##n”的##操作符將前面和後面的記號連接起來,合成一個新的記號
printf(20);
將被展開成如下形式:
printf("%d/n",f20);

...與__VA_ARGS__
例如
#define debugPrintf(...)  printf("DEBUG: "__VA_ARGS__)


 

用rand產生隨機數

srand( (unsigned)time( NULL ) );

rand()%MAX

 

C++方式文件讀寫(read,write方式)

 

  1. ifstream file;
  2. char tmp[1024];
  3. std::string filecontent;
  4. file.open(filename,ios::in|ios::binary);
  5. if(!file.is_open())return -1;
  6. while(!file.eof()){
  7.     int n=file.read(tmp,1024);
  8.     filecontent.append(tmp, file.gcount());
  9. }
  10. file.close();

C方式文件讀寫(fread,fwrite方式)

  1. FILE* f=fopen("test.dat","rb");
  2. std::string filebuf;
  3. char buf[1024];
  4. while (!feof(f))
  5. {
  6.     int r=fread(buf,1,1024,f);//每次讀一字節,讀1024次,返回實際讀取字節數
  7.     filebuf.append(buf,r);
  8. }
  9. fclose(f);
發佈了43 篇原創文章 · 獲贊 0 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章