Programming abstractions in C閱讀筆記:p123-p126
《Programming Abstractions In C》學習第50天,p123-p126,總結如下:
一、技術總結
1.notaion
這也是一個在計算機相關書籍中出現的詞,但有時卻不是那么好理解,因為它可以指代很多對象,這里做一個記錄。示例:p124。
In C, you can use any character array to hold string data.
char str[6] = {'h', ' ', 'l', ' ', 'o', '\0'};
or, more compactly,
char str[6] = "hello";
If you use array notation, the standar idion for processing every character in a string looks like this:
for (int i = 0; str[i] != '\0'; i++) {
printf("i=%d\n", str1[i]);
}
在這里,“notation”以理解為“the activity of representing sth by a special system of marks or character”,即“notation”表示的是一種“標記方法”、“表示方法”。
2.字符串用法示例
#include <stdio.h>
// 統計字符串中的空格(space):數組版
static int CountSpaces(char str[]) {
int i, nSpaces;
nSpaces = 0;
for (i = 0; str[i] != '\0'; i++) {
if (str[i] == ' ') {
nSpaces++;
}
}
return nSpaces;
}
// 統計字符串中的空格(space):指針版
static int CountSpaces1(char *str) {
int nSpaces;
char *cp;
nSpaces = 0;
for (cp = str; *cp != '\0'; cp++) {
if (*cp == ' ') {
nSpaces++;
}
}
return nSpaces;
}
int main() {
// 方式一:declare and initialize a string "hello"
char str1[6] = {'h', ' ', 'l', ' ', 'o', '\0'};
// 遍歷字符串
for (int i = 0; str1[i] != '\0'; i++) {
printf("i=%d\n", str1[i]);
}
// 方式二:更緊湊(compactly)
char str2[6] = "hello";
// 統計字符串中的空格
int n;
n = CountSpaces(str1);
printf("\nthe number of spaces in string is: %d\n", n); // 2
// 統計字符串中的空格
int n1;
n1 = CountSpaces1(str1);
printf("\nthe number of spaces in string is: %d\n", n1); // 2
}
二、英語總結
1.perfectively什么意思?
答:perfect是“完美的”之意,但是perfectly翻譯的時候直接翻譯成"完美地"卻不大合適。應該翻譯成"adv. perfectly can alse mean very or compeletly"(很,非常)更好,當然,其實這個意思也是“in a perfect way”。
2.likelihood什么意思?
答:u.the chance than sth will happen(可能性),同義詞:possibility。
三、參考資料
1. 編程
(1)Eric S.Roberts,《Programming Abstractions in C》:https://book.douban.com/subject/2003414
2. 英語
(1)Etymology Dictionary:https://www.etymonline.com
(2) Cambridage Dictionary:https://dictionary.cambridge.org
歡迎搜索及關注:編程人(a_codists)
浙公網安備 33010602011771號