1樓:匿名使用者
copy這個函式,如果*(s+i)為『\0』則退出迴圈是吧,那迴圈到hello和world中間那個空格那裡,那個空格難道不是'\0'麼?如果是'\0'為什麼還要繼續迴圈呢?
你的疑問:空格ascii 碼是32,而'\0'ascii 碼是0.字串的末尾胡'\0'是自動加上去的,所以『\0'和字元0又不一樣了,0的ascii 碼是:
48,所以,『\0'和空格還是有區別的
2樓:匿名使用者
空格是0x20, 而\0就是 0x0
所以不是同一個東西
可以從ascii碼錶中查到
3樓:施小平
ascii碼錶:
decimal octal hex binary value
------- ----- --- ------ -----
000 000 000 00000000 nul (null char.)空字元
032 040 020 00100000 sp (space)空格
4樓:匿名使用者
hello world 中間的是空格而不是\0空格和字元是一樣的ascii裡的空格是32
5樓:匿名使用者
'\0'的ascii值是0
空格的ascii值是32
c語言字串中的空格算不算一個字元?
6樓:匿名使用者
當然算了~~~~
只要十鍵盤上的東西 c都是可以接收到的
主要是很多特殊的字元如果不用特殊的方法的話 c吧他過濾掉了
j**a中去除字串中所有空格的幾種方法
7樓:h醉聆煙濤
1、string.trim()
trim()是去掉首尾空格
2、str.replace(" ", ""); 去掉所有空格,包括首尾、中
間複製** **如下:
string str = " hell o ";
string str2 = str.replaceall(" ", "");
system.out.println(str2);
3、或者replaceall(" +",""); 去掉所有空格
4、str = .replaceall("\\s*", "");
可以替換大部分空白字元, 不限於空格
\s 可以匹配空格、
製表符、換頁符等空白字元的其中任意一個
具體如下:
1、簡介
程式設計是編寫程式的中文簡稱,就是讓計算機代為解決某個問題,對某個計算體系規定一定的運算方式,是計算體系按照該計算方式執行,並最終得到相應結果的過程。
為了使計算機能夠理解人的意圖,人類就必須將需解決的問題的思路、方法和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據人的指令一步一步去工作,完成某種特定的任務。這種人和計算體系之間交流的過程就是程式設計。
2、彙編程式
彙編程式。使用組合語言編寫計算機程式,程式設計師仍然需要十分熟悉計算機系統的硬體結構,所以從程式設計本身上來看仍然是低效率的、繁瑣的。但正是由於組合語言與計算機硬體系統關係密切,在某些特定的場合,如對時空效率要求很高的系統核心程式以及實時控制程式等,迄今為止組合語言仍然是十分有效的程式設計工具。
3、執行原理
計算機對除機器語言以外的源程式不能直接識別、理解和執行,都必須通過某種方式轉換為計算機能夠直接執行的。這種將高階程式設計硬體程式設計語言編寫的源程式轉換到機器目標程式的方式有兩種:解釋方式和編譯方式。
j**a中給字串中每兩位字元加一個空格
8樓:王培帥
迴圈下string的char 每兩個字元後面插一個空格最後生成string輸出
9樓:匿名使用者
"sfdsa".replaceall("", " ");
輸入字串中有空格怎麼表示?
10樓:雲間聽風
輸入的空格實際為一個asc字元,若程式設計時直接輸空格,編譯程式會直接無視的。可以轉化字元嘛。a[i]=chr(32).
11樓:添
應該是a[i]=' '; 用單引號裡面包括一個空格 就行了!
c語言 輸入一個字串,刪除該字串中的所有空格並輸出處理後的字串
12樓:顧小蝦水瓶
int main()
char s[1024],c[1024];
int len,n=0,i;
char p,q;
p=s;q=c;
printf(「請輸入字串的長度:」);
scanf("%d",&len);
printf(「請輸入一串字串:」);
for(i=0;iscanf("%c",p+i);
for(i=0;iif((p+i)>=48&&(p+i)<=57||(p+i)>=97&&(p+i)<=122)
(q+n)=(p+i);
n++;
for(i=0;iprintf("%c",*(q+i));
c語言程式設計技巧
1、函式引數
在設計函式時,通常將目的引數放在前面,源引數放在後面。若可能,通過in、out這樣的巨集定義來標註引數輸入輸出。
如果引數是指標,且僅作輸入用,則應在型別前加const,以防止該指標在函式體內被意外修改。
2、函式中記憶體處理
(1)在函式中分配的記憶體,在函式退出之前要釋放
(2)return語句不可返回指向「棧記憶體」的指標或者引用,因為該記憶體在函式體結束時被自動銷燬。
13樓:後疇旅亦旋
#include
#include
void
main()
14樓:甄喜歡你
#include"stdio.h"
char p[50],*s=p-1;
main(int _)
15樓:匿名使用者
呼叫str_replace函式
#include
#include
void main()
16樓:匿名使用者
c語言就是編輯中的一種語言,要算出一些字元,那我們在程式設計過程中這個。
輸入一個字串(不含空格),輸入一個字元,判斷該字元在該字串**現的次數,用j**a做,謝謝
17樓:time飛啊飛的
將字串轉換成 字元陣列 用tochararray方法
for迴圈遍歷字元陣列,並用要判斷的字元與字元陣列中的字元判讀,有一個int num;來計算次數.
沒寫具體的程式,僅提供思路,自己寫出來的會更利於你的學習!
j**a問題:從字串中提取用空格隔開的數字
18樓:黃three兒啊
如果按照你說的意思「從字串中提取用空格隔開的數字」
下面這種方法是對的"取出空格隔開的資料"
string str = "16 5 12 136";
string s = str.split(" ");
//你可以把得到的值強轉成int
for (int i = 0; i < s.length; i++)如果按照你給的 例子:「如字串 「16 5 12 136」 輸出為:16512136」
那麼 下面應該是對的
string str = "16 5 12 136";
string s = str.split(" ");
//你可以把得到的值強轉成int
for (int i = 0; i < s.length; i++) 這樣就可以輸出 你要的結果了
19樓:匿名使用者
trim()只是移走字串開頭和結尾的空格好不……
system.out.println("123 456 78".replaceall(" ", ""));把空格替換了就ok了
20樓:匿名使用者
直接呼叫trim()
21樓:匿名使用者
string s = 16 5 12 136;
sysout(s.trim());暈。。
22樓:匿名使用者
上面的正解..............
j**a問題:從字串中提取用空格隔開的數字
23樓:匿名使用者
string s = "16 5 12 136";string s1 = s.trim().split(" ");//先用
來trim()去掉
自s的前後的空格,再用空格分割s到s1中
for (int i = 0; i < s1.length; i++)
24樓:匿名使用者
你使用string類中的split函式du,我這裡給zhi你一個例子: public class splitdemo
public static void main(string args)}
25樓:匿名使用者
public class test }}
26樓:匿名使用者
string s="16 5 12 136";string ss=s.split(" ");for (int i = 0; i < ss.length; i++)
C語言字串,求大佬,C語言字串陣列的問題
在語句for j 0 s j 0 j 中,j 記錄的是串s的字元個數,結束該迴圈時,s j 恰好是 0 在接下來的for迴圈中,第一個j 後,s j 是串s的最後一個字元,而i為0,迴圈體將s 0 與s j 進行交換,第二個j 是正常遞減,以便與i 相對應,交換s i 和s j 沒那個程式之類執行不...
C語言字串
錯誤在註釋中給出了 程式正確執行 include void main else if str i 等號是 是賦值 else if str i 等號是 是賦值 j letter blank gantan printf n d n j 先分析一下你的 for i 0 str i 0 i 你應該改成 fo...
C中判斷字串是不是漢字,c 怎麼判斷字串中包含漢字
1 用ascii碼判斷 在 ascii碼錶中,英文的範圍是0 127,而漢字則是大於127,具體 如下 string text 是不是漢字,abc,柯樂義 for int i 0 i text.length i else 2 用漢字的 unicode 編碼範圍判斷 漢字的 unicode 編碼範圍是...