- 字符串比較不能直接用== ,要用strcmp.
- 用strcmp時注意當相等時,返回0,在if語句中爲不進入.
- 用gets才能讀入帶空格的字符串,scanf遇到空格,回車,TAB認爲輸入結束.
- 用gets和scanf("%c",&x)時,注意要用getchar()吃掉緩衝區的回車.
- 一定要看vim前面的☸提示.
- 定義一個指針,要麼讓它指向某個變量,要麼給它動態分配內存.不要直接使用!
- 字符數組只有在定義時才能將整個字符串一次性的賦值給它,一旦定義完了,就只能一個字符一個字符的賦值了.例如:
char str[7];
str = "hello";
str[0] = 'a'; str[1] = 'b'; str[2] = 'c';
str[3] = '1'; str[4] = '2'; str[5] = '3';
- 除了字符數組,C語言還支持另外一種表示字符串的方法,就是直接使用一個指針指向字符串,例如:
char *str ;
str = "xxxx";
或者
char *str = "xxx";
- 指針數組的輸入操作,需要先動態分配內存給指針.
char *string[10] = {NULL};
for(i = 0; i < 10; i++) {
string[i] = (char *)malloc(sizeof(char)*20);
scanf("%s", string[i]);
}
- float 的有效數字範圍爲7位有效數字
double的有效數字範圍爲15~16位有效數字
這裏的有效數字範圍包括小數和小數點前的數,
例如:3.14 是3位有效數字
- 默認情況下, 編譯器會把一個小數當做double類型
如果寫成float x = 3.14;
則編譯器會把double類型轉換爲float類型, 多做一步轉換
所以一般 float x = 3.14f;