『壹』 c語言怎麼合並兩個字元串
代碼:
char str1="123";
char str2="abc";
strcat(str1,str2);
printf("%s",str1);
例如:
#include <stdio.h>
#include <string.h>
main()
{
char strDes[N]= "kkkjdah", strSor[N]="sdasdaaa";
strcat(strSor,strDes);//鏈接
puts(strDes);
puts(strSor);
}
(1)逐個字元合並字元串c語言擴展閱讀:
字元串在存儲上類似字元數組,它每一位單個元素都是能提取的,字元串的零位是它的長度,如s[0]=10,這提供給我們很多方便,例如高精度運算時每一位都能轉化為數字存入數組。
通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。
『貳』 c語言中如何 把多個字元串合並
#include <stdio.h>
#include <string.h>
main()
{
char strDes[N]= "kkkjdah", strSor[N]="sdasdaaa";
strcat(strSor,strDes);//鏈接
puts(strDes);
puts(strSor);
}
『叄』 c語言基礎問題 如何合並字元
table[]數組大小不合理,應該至少有4個sizeof(char)大小才行.
1、int數由個十百千...位組成。所以234可以這樣得到:(table[0] * 10 + table[1])* 10 +table[2] = (2*10+3)*10+4=234。
2、可以先定義一個字元數組用來存放字元串。char newstr[4]; newstr[0] = table[0],newstr[1] = table[1], newstr[2] = talbe[2]; newstr[3] = '\0';註:newstr[3]='\0'的作用是註明字元串已結束,否則程序不知道什麼時候讀完newstr數組。這樣就可以得到abc串了。
『肆』 c語言 字元串合並
我心情挺好的,幫你解決吧!
#include "stdio.h"
#include "string"
void main()
{
char s[100] ;
char str1[100],str2[100];
gets(s);
gets(str1);
gets(str2);
strcat(s,str1);
strcat(s,str2);
printf("%s",s);
}
『伍』 c語言如何合並兩個字元串
如果是C語言,有一個函數是strcat
在函數庫string.h,功能就是合並字元串
例如:
#include<stdio.h>
#include<string.h>
chara[10]={"12"};
charb[10]={"bc"};
intmain()
{
strcat(a,b);
printf("%s ",a);
return0;
}
『陸』 C語言里如何將多個字元串數據合成一個數據
//將兩個字元串合成一個字元串,在括弧中填入適當的語句,編譯
運行出正確的結果。
#include
#include
void
main()
{
char
s1[20],s2[30],s3[50];
int
i,j,lengths1,lengths2;
printf("string1:");
gets(s1);
printf("string2:");
scanf("%s\n",s2);
lengths1=strlen(s1);
lengths2=strlen(s2);
for(i=0;i
評論
0
0
載入更多
『柒』 c語言 字元串合並
////////// 如果通過一個地址返回呢?該怎麼處理啊?
#include<stdio.h>
#include<string.h>
#define M 3
#define N 30
void fun(char a[M][N], char *b)
{
for (int i = 0; i< M; ++ i ){
strcat( b, a[i]); // 這樣子使用.
}
}
int main(int argc, char ** argv )
{
char w[M][N]={"AAAA","BBBBBBB","CC"}, a[100];
int i ;
printf("The string: \n");
for(i=0; i<M; i++){
printf("w[%d] = [%20s] \n", i, w[i]);
}
printf("\n");
//bzero(a, sizeof(a));
memset(a,0, sizeof(a));
fun(w,a);
printf("The A string: ---------> \n");
printf("a = [%30s]\n",a);
return 0;
}
////////////////////////////// 為什麼結果出現錯誤 無法運行??
// 因為 b 沒有給它申請內存, 是個未定義的指針. 肯定會出錯.
// 用 strcat 時, 一定要確保, 目標內存的大小有足夠的空間存放合並後的字元串.
// 如果空間太小, 就會出現內存溢出.
#include<stdio.h>
#include <string.h>
int main( int argc, char ** argv )
{
char *b = NULL;
char a[3][20]={"AAAA","BBBBBBB","CC"};
int len = strlen(a[0]) + strlen(a[1]) + strlen(a[2]) + 1 ; //目標字元串長度.
b = (char *)malloc( len ) ;
memset(b, 0, len); // 清0 ;
strcat(b,a[0]);
strcat(b,a[1]);
strcat(b,a[2]);
printf("%s",b);
free(b); // 要記得 free 哦.
b = NULL;
return 0;
}
『捌』 C語言 合並字元串數組
做如下幾個方面的修改:
1:聲明的STK和定義的保持一致
2:STK中返回的是局部數組變數,這樣是不能返回到主函數的
3:字元串的末尾需要加'