⑴ c語言:如何將字元串中指定的字元替換為另一個指定字元
void
rep(char
*s,char
*s1,char
*s2)
{
char
*p;
for(;*s;s++)
/*順序訪問字元串s中的每個字元*/
{
for(p=s1;*p&&*p!=*s;p++);/*檢查當前字元是否在字元串s1中出現*/
if(*p)
*s=*(p-s1+s2);
/*當前字元在字元串s1中出現,用字元串s2中的對應字元代替s中的字元*/
}
}
不知道對於不對,你自己去試下,對了請採納,不對請往下瀏覽
⑵ 在C語言中處理字元的幾種常用方法
基本上兩種:字元數組和字元指針。字元數組名是常量,字元指針是變數
1、用字元數組:一個一維字元數組存儲一個字元串,二維數組存儲多個字元串。如:
int i;
char s1[]="abc",s2[][80]={"ABCD","XYZ"},s3[80];
scanf("%s",s3);
printf("%s,%s\n",s1,s3);
for(i=0;i<2;i++)printf("%s\n",s2[i]);
2、用字元指針:字元指針指向一個字元串,字元指針數組處理多個字元串。如:
int i;
char *p1="abc",*p2[]={"ABCD","XYZ"},**p;
printf("%s\n",p1);
for(i=0;i<2;i++)printf("%s\n",p2[i]);
p=p2;
for(i=0;i<2;i++)printf("%s\n",*p++);
3、字元數組與字元指針配合一起使用:字元數組提供字元串的存儲,處理字元串用字元指針
char s[80],*p;
p=s;
scanf("%s",p);
printf("%s",p);
在string.h中所有處理字元串函數,對字元數組和字元指針都適用。
⑶ C語言在編譯運行字元結果時一直顯示對應的ASCII怎麼回事
殤雪璃愁 的回答說得對的。
可見把char 作為%d來輸出時,是並不會發生「內存訪問越界」的。
但是第二行的輸出,兩個整數之間是應該用分隔符分開的,例如printf("%d %d ",c1,c2);
⑷ 在c語言中 字元串如何去定義有幾種定義方法
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
⑸ 編譯 字元轉義 C語言
#define A B所做的就是把源文件中B所出現的地方,用A完整的代替;
在你這里#define catcaine ;當然能夠通過;而#define catcaine 『\73』完全不能通過;
比如對於下面一個片段
int a;
char b;
使用#define catcaine ;
int a catcaine
int b catcaine編譯的時候,編譯器會自動吧catcaine替換為;和原來一樣,所以是正確的
使用#define catcaine 『\73』
int a catcaine
int b catcaine編譯後,會替換為
int a '\73'
int b '\73'這當然不能通過
⑹ C語言怎麼定義中文字元
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
⑺ C語言中如何定義字元串
可以用數組或指針
數組:
char s[80]="abcd";或者char s[80]={"abcd"}; /*說明:自動加字元串結束標志: */
char s[80]={"a","b","c","d","