1. 程式人生 > 其它 >【筆記】c語言學習記錄

【筆記】c語言學習記錄

學習中發現c與c++仍有諸多不同,遂寫之

1、error: 'for' loop initial declarations are only allowed in C99 mode

因為在gcc中直接在for迴圈中初始化了增量

  for(int i=0; i<len; i++)

這語法在gcc中是錯誤的,必須先先定義i變數,再寫for迴圈

2.c語言中的字串是char s[],沒有string

所以可以這麼寫了

scanf("%s",s+1);
int n=strlen(s+1);
3.#define和const的不同
int N=5010,MOD=1000000007;
int
dp[N][N],dis[N];

(1)在C語言中,const不是一個真真正正的常量,其代表的含義僅僅是隻讀。使用const宣告的物件是一個執行時物件,無法使用其作為某個量的初值、陣列的長度、case的值或在型別的情形中使用。

(2)由const修飾的型別在記憶體中佔空間而#define不佔空間,

#define只是在編譯前將要編譯的原始檔中相應的部分使用字串替換例如前面的程式碼在編譯前會被預處理為

4.沒有某些庫 #include"iostream.h"   故沒有cin