1樓:匿名使用者
是將字串陣列的最後一個字元元素置為字串結束標誌,防止字串訪問時造成字串陣列訪問越界。
2樓:匿名使用者
**好像不全啊,
1.開啟novelle.txt;
2.從檔案中讀取「strline-1」個位元組,放到srcstr中,從看srcstr似乎是strline長的陣列或者記憶體塊;
3.顯示這strline-1個字元,用的「printf("%s\n",srcstr);」,這行就解釋了為什麼需要在strstr陣列最後一個位元組新增字串結束符"\0",否則,printf會一直輸出,直到找到第一個「\0」為止;
4.等待使用者輸入,如果輸入「exit」,就退出,否則繼續從檔案中讀數並顯示。
3樓:我愛恬淡的生活
char filename = "novelle.txt";
file *fp = fopen(filename, "rb"); //以『讀二進位制』檔案方式開啟檔案「novelle.txt」,檔案描述符 fp
if (fp == null)
//若還不明白可以看fopen函式
while((!feof(fp)))//if not reach file end
//列印輸出srcstr的內容到螢幕上,然後從螢幕讀入一個字串,假如是exit的話,就直接跳出迴圈,不再讀檔案。
c語言中的strcpy是什麼意思?
4樓:綉乞群群
"c語言標準庫函式strcpy,把從src地址開始且含有null結束符的字串複製到以dest開始的地址空間。直觀表示為strcpy(狗,賦值內容)實現對文字變數""狗""的賦值,以區別於普通數字的形式賦值。
原型宣告:extern char *strcpy(char* dest, const char *src);
標頭檔案:#include 和 #include
功能:把從src地址開始且含有null結束符的字串複製到以dest開始的地址空間
說明:src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。
返回指向dest的指標。"
5樓:匿名使用者
原型:extern char *strcpy(char *dest,char *src);
用法:#include
功能:把src所指由null結束的字串複製到dest所指的陣列中。
說明:src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。
返回指向dest的指標。
舉例:char *strcpy(char *strdest, const char *strsrc);
(以下來自preason)
以下是我自己編輯的strcpy的函式源程式!
大家可以直接複製到c語言中直接使用:
#include
#include
char mystrcpy(char str3[100],char str4[100])
*(str3+i)='\0';
printf("%s",str3);
}main()
6樓:每日技術文章精品推薦
strcpy(a,b);
a,b都是字串指標,或者都是字元陣列,
將b的值賦給a
7樓:
#include
#include
int main()
程式執行結果為:
c language
8樓:匿名使用者
複製string copy
strcpy(char* a,char *b)
把b複製給a
c語言 str函式
9樓:匿名使用者
也許你迷惑的地方:gets(陣列名):假如字元陣列的長度為9,當從鍵盤輸入字串時,gets函式最多隻能接收8個字元,因為系統要在字串末尾加上'\0'。
當輸出字串時,遇見'\0'就停止輸出,而strcpy在使用時要連'\0'一起復制。
10樓:匿名使用者
//這裡要理解stramp函式,原型是 int strcmp(char *str1,char *str2),這個實現字串的對比,先用str1裡面第一個字母減去str2裡面的第一個字母得到一個acii值,判斷若該值大於0就返回1,若小於0就返回-1,若等於0就繼續用各字串裡德第2,第3個字母相減,知道結束符\0為止就認為2個字串時相同的,返回0
//這裡b的值為98,m=109,所以strcmp(str[0],str[1])>0,第一個if不執行,執行else ,string="m",然後strcmp(str[2],string),a-m<0,不執行
//最後輸出m下邊程式是在vc6.0下寫的,可以直接編譯,看註釋很好理解#include#include
;main();printf("%d\n",strcmp(str[0],str[1])); if(strcmp(str[0],str[1])>0)
else strcpy(string,str[1]); if(strcmp(str[2],string)>0)
printf("%s\n",string);}
在c語言中,a[k]='\0'什麼意思
11樓:匿名使用者
字串結尾中止字元!比如:定義一個字串,char a[3];
對字串賦值如下:a[0] = 'a'; a[1] = 'b'; a[2] = 'c'; a[3] = '\0';
'\0'字元簡單說就是告訴一串字元的結尾符
12樓:匿名使用者
'\0'這個表示字串結束符
a[k] = '\0';
表示把結束符賦值給字元陣列a的第k+1個元素
c語言求二維陣列中所有元素的和
13樓:匿名使用者
遍歷二維陣列,逐個累加即可
。以二維陣列為10行5列為例。
int a[10][5],i,j,s=0;
for(i = 0; i < 10; i ++)for(j = 0; j <輸入每回個元素答的值。
for(i = 0; i < 10; i ++)for(j = 0; j < 5; j ++)s+=a[i][j];//累加每個元素
printf("%d",s);//輸出結果。
14樓:匿名使用者
#include
#define n 5 //可以抄改變數襲組的行數,***但是輸數的時候要注意***#define m 4 //可以改變陣列的列數void main()
{int i,j,a;
int sum=0;//用於求和
printf("請輸入數:");
for(i=0;i
15樓:匿名使用者
int main(void)
;//數值按你自己的要求加內進去
容int k,m;
int sum= 0;
for(k = 0;k
for(m = 0;m printf("the sum is %d\n",sum); return 0;} 16樓:抹不去那縷光 #include int main() 17樓:匿名使用者 1 #include 2 int main() 3 ;5 int sum = 0; 6 int i,j; 7 for(i=0;i 8 for(j=0;j 912 printf("sum = %d\n",sum); 13 return 0; 14 } c語言小白。。。。。。。。。。。 18樓:匿名使用者 1、while(i>0)應該改成while(i>=0),之前還需要做一次i--,因為陣列b是從0開始存的,while(number>0)結束時i多加了一次。 2、編譯錯誤的原因可能是true和false,這是c++的常量,c語言裡是沒有的。 3、根據幾個測試點,printn應該判斷m、n的關係,需要排除無效資料,並列印資訊,同時對於判斷narcissistic函式返回值是否為1時最好寫成if(narcissistic( i ) == 1),這樣比較嚴謹。 4、最後,narcissistic裡對於負數的處理也不好,拆分出來後都是正數,這樣負數永遠都不會對。當然,題目對m、n範圍有要求,只是你沒做。 c語言中的strcat是什麼意思啊? 19樓:飛喵某 1、strcat是用來拼接字串的,它會將引數 src 字串複製到引數 dest 所指的字串尾部。具體用法首先用vs2017新建一個c語言的程式檔案,引入標頭檔案,引入strcat函式所在的包「string.h」,最後設定一個主函式: 2、接著用str函式複製一段話,首先定義一個80位的char型別變數,接著用strcat函式拼接成一句話,str函式接受兩個引數,前一個是待拼接的變數,後面的是需要拼接的內容,可以是變數也可以是一串字元;最後用puts函式輸出str的內容即可: 3、按下crtl+f5執行除錯程式,在開啟的命令提示符中就會顯示出完整的一句話了。以上就是strcat函式的用法: 20樓:雪後飛狐 字串連線函式,函式返回指標,兩個引數都是指標.第一個引數所指向的記憶體的地址必須能容納兩個字串連線後的大小. #include #include //這一句一定要加,包含了strcat的源**main() 21樓:湛藍水晶 char *strcat(char* s1, char* s2); 將字串s2連線到s1的後面。 22樓:匿名使用者 是字串連線函式. 原型:extern char *strcat(char *dest,char *src); 用法:#include 功能:把src所指字串新增到dest結尾處(覆蓋dest結尾處的'\0')並新增'\0'。 說明:src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。 返回指向dest的指標。 23樓:我中意 strcat的用法:strcat(字串1,字串2)strcat是一個函式.是字串連線的意思. 起作用是連線兩個字元陣列中的字串.把字串2接到字串1的後面.結果放在字串1中. 這個函式呼叫後得到一個函式值:字串1的地址.如: char strl[6]=; char strl[5]=; printf("%s",strcat(strl1,strl2)); 則輸出: peoplehuman 24樓:匿名使用者 將多個字串拼接成一個長字串後返回,不是嗎?c書上有說明的! 樓上已經說了一些原因了,我補充一下 1 處理整數和浮點數的指令不一樣,就連有符號整數和無符號整數的乘除用的指令都不一樣 為了在編譯的時候確定用哪種指令處理這個變數,必須為資料指定型別2 各種型別的變數有著不同的優點和缺點,所以才有這麼多型別的變數,比如整數的處理速度比浮點數快 我只大概測試過整數加法... include include include const int maxn 5000 10 char buf maxn s maxn int p maxn int main 從中間點向外擴充套件,直到遇到結束或者不相等停止 分為偶數長子串和奇數長子串,分別處理 for i 0 i m i even... include include int main if num 10 2 while num printf 是偶數reverse d n reverse return 0 include include int odd int num 對num第二位進行判斷奇偶性,是奇數則返回1偶數返回0 int ...c語言小白問題,C語言小白問題
c語言小白求教
c語言小白求解一道題,C語言小白求解一道題。