㈠ c語言關於數組賦初值的問題char buff[10]={0};
需要注意的是:char
buff[5]={0};和char
buff[5]={'0'};是兩個完全不同的概念:
char
buff[5]={0};的賦的是一個字元串的結束符,而不是一個字元'0';
char
buff[5]={'0'};才是給第一個字元賦值為'0'。
大家喜歡用char
buff[5]={0};主要是想製造一個空的字元串,
你調試一下就知道了:
如果這樣寫:
#include
void
main
{
char
buff[5]={0};
printf("%s",buff);
}
是沒有任何輸出的,因為printf遇到的buff的第一個字元就是個字元串的結束符'\0'
而如果這樣寫:
#include
void
main
{
char
buff[5]={'0'};
printf("%s",buff);
}
才會看到輸出了一個'0'
這才是你理解的給第一個單元賦值為『0』。
char
buff[5]={0};是一種定義空字元數組的嚴謹的寫法!
㈡ C語言 char buf[80];什麼意思
char
buf[80];是定義包含80個元素的一位字元型數組
至於程序,需要提供完整一些的源代碼
㈢ 在c語言二維數組中怎樣交換兩個數組元素中的字元串,請寫代碼.
int strcpy(char *s1,const char *s2);
開辟一個緩沖區,比如
char buff[100];//假設你的字元串不超過這么多
而你的而為數組為
char **argv;
其中argv[0] = "this is the first string";
argv[1] = "this is the seconde string";
你只須調用如下
strcpy(buff,argv[0]);
strcpy(argv[0],argv[1]);
strcpy(argv[1],buff);
一下是完整代碼,並測試過
#include <stdio.h>
#include <string.h>
char argv[2][100]={ "This is the first string","This is the second string"};
// 存儲字元串的二維數組,每個字元串最長為99個位元組
char buff[100];
//緩沖區
int main()
{
printf("轉換前:\n");
printf("argv[0] = %s\n",argv[0]);
printf("argv[1] = %s\n",argv[1]);
strcpy(buff,argv[0]);
strcpy(argv[0],argv[1]);
strcpy(argv[1],buff);
printf("轉換後:\n");
printf("argv[0] = %s\n",argv[0]);
printf("argv[1] = %s\n",argv[1]);
return 0;
}
㈣ 在c語言中 char buf[ ]="1234567890ABCD" 代表什麼
是一個字元數組。初始化為字元串形式則末尾有隱含的'\0'字元。定義字元數組時同時初始化,則可以不用用戶指明字元數組長度,由系統根據你初始化的長度給定。
㈤ "char buf [50]"在C語言中是什麼意思
buf 是定義的一個數組名,也是數組首地址;
而char表示你數組元素的類型,即是你定義的數組元素只能是字元型的;
而50則表示數組元素的個數,你定義的是50,也就是說,從0到49這些元素。
㈥ C語言中的buff是什麼eg:char buff[BUFFSIZE];
buff是數組名字,中文解釋是緩沖區,一般程序員習慣用buff在存放字元串。
㈦ c++ char字元組拼接
主要使用兩個函數strcat和strcpy,strcat本身就是連接字元串的,但是要保證空間足夠。
例:
int main()
{
char buff[1024];
memset(buff, 0, sizeof(buff));
const char *buff2 = " test";
strcpy(buff, "abc");
strcat(buff, buff2);
printf("%s", buff);
}
(7)charbuffc語言擴展閱讀
C語言:通過指針對字元串進行拼接
#include <stdio.h>
#include<string.h>
void Pointer_stringcat(char *str1,const char *str2)
{
while (*(str1++)!='