C 字元的特殊處理

2021-10-01 11:05:51 字數 1621 閱讀 5394

// char*陣列中

char p0[2] = ;

char p1[2] = {};

char p2[2] = ;//把ascall碼0對應的字元賦值給陣列,不加 " " 引號賦值都是以ascll碼賦值。

char p3[2] = ;

char p4[2] = ""; 這5個都是一樣的

上面五種情況都表示空字元。

char s =「 \\141\141abc\t 」;

cout << s << strlen(s) << endl;

\141aabc 9

分析:\141 是乙個字元 a ,為什麼呢?因為 \141 是一種用八進位制數字表示字元的形式,\o \oo \ooo 這三種形式,當然 o 必須是正確的八進位制數(0~7) strlen() 函式是不計入 \0 的。\t:水平製表(跳到下乙個tab位置)\n:換行

\r:回車,將當前位置移到本行開頭,不會換到下一行,如果接著輸出的話,本行以前的內容會被逐一覆蓋。

char a = 'a';

char a = 'a';

cout << a - a << endl; // 32

利用字元相加減可以實現字元的大小寫轉換,這也是c++ 庫 toupper和tolower的底層實現原理。

int tolower(int c)

int toupper(int c)

char string = "this is a string";

string[i] = tolower(string[i]);

char str1="0123456789";   // 字串結尾還有乙個結束標誌\0

char str2=;

sizeof(str1); //11

sizeof(str2); //10

strlen(str1); //10

strlen(str2); //不確定的值,未知到哪個位置會遇到\0或者null。

char str3[8]=;

sizeof(str3); //8

strlen(str3); //1,只有乙個有效值,其它位置為空字元。

const char * str4="abcd";

sizeof(str4); // 4 指標本身所佔的大小,若以指標名char* 傳給sizeof 會只計算指標的所佔的大小,要傳陣列名char name 。

strlen(str4); //4

char *p;

p=(char*)malloc(6);

strcpy(p,"abcde");

//或p="abcde"; //p指向常量區的內容

char a = "abcde"; //正確

char b[6];

b = "abcde"; //錯誤,陣列名代表了陣列的起始位址,是乙個位址常量,而常量是不能改變的。b的位址在堆疊,不能轉為常量區位址

char p;

scanf("%d",(int*)&p[i*4]);

JSON特殊字元的處理

本文 json 資料中的string 傳遞資料時,需要處理好特殊字元.json資料中有特殊字元 1 引號 如果是使用單引號,來括值的話,那string 中 單引號為特殊字元 2 正斜槓,反斜槓,換行符號等。另外,必須用 而非 表示字串 lain c json字串特殊字元處理,比如 a1 1300 p...

sql處理特殊字元

我們都知道sql server查詢過程中,單引號 是特殊字元,所以在查詢的時候要轉換成雙單引號 但這只是特殊字元的乙個,在實際專案中,發現對於like操作還有以下特殊字元 下劃線 百分號 方括號 以及尖號 其用途如下 下劃線 用於代替乙個任意字元 相當於正規表示式中的 百分號 用於代替任意數目的任意...

Solr特殊字元處理

solr特殊字元處理 一,solr在搜尋時需要注意,搜尋的文字需要進行特殊字元處理,即對solr特殊字元進行轉義 solr特殊字元轉義提供了乙個工具類org.apache.solr.client.solrj.util.clientutils 使用的時候只需要string q clientutils....