C字符串筆試題
C語言是世界上最流行、使用最廣泛的高級程序設(shè)計(jì)語言之一。A下面就由學(xué)習(xí)啦小編為大家介紹一下C字符串筆試題的文章,歡迎閱讀。
C字符串筆試題篇1
一、void * memcpy( void* dest, const void* src, size_t count )
表頭文件: #include
定義函數(shù): void *memcpy(void *dest, const void *src, size_t n)
函數(shù)說明:
memcpy()用來拷貝src所指的內(nèi)存內(nèi)容前n個字節(jié)到dest所指的內(nèi)存地址上。與strcpy()不同的是,memcpy()會完整的復(fù)制n個字節(jié),不會因?yàn)橛龅阶址Y(jié)束'
C字符串筆試題
C語言是世界上最流行、使用最廣泛的高級程序設(shè)計(jì)語言之一。A下面就由學(xué)習(xí)啦小編為大家介紹一下C字符串筆試題的文章,歡迎閱讀。
C字符串筆試題篇1
一、void * memcpy( void* dest, const void* src, size_t count )
表頭文件: #include
定義函數(shù): void *memcpy(void *dest, const void *src, size_t n)
函數(shù)說明:
memcpy()用來拷貝src所指的內(nèi)存內(nèi)容前n個字節(jié)到dest所指的內(nèi)存地址上。與strcpy()不同的是,memcpy()會完整的復(fù)制n個字節(jié),不會因?yàn)橛龅阶址Y(jié)束'\0'而結(jié)束。
返回值: 返回指向dest的指針
附加說明: 指針src和dest所指的內(nèi)存區(qū)域不可重疊
void * memcpy( void* dest, const void* src, size_t count )
{
assert((strDest!=NULL) && (strSrc !=NULL));
char* d = (char*)dest;
const char* s = (const char*)src;
while( count-->0 )
*d++ = *s++
return dest ;
}
注解:
1、size_t 就是unsigned int
2、
函數(shù)名: assert(斷言)
功 能: 測試一個條件并可能使程序終止
用 法: void assert(int expression);
assert宏的原型定義在中,其作用是如果它的條件返回錯誤,則終止程序執(zhí)行,原型定義:
#include
void assert( int expression );
assert的作用是現(xiàn)計(jì)算表達(dá)式 expression ,如果其值為假(即為0),那么它先向stderr打印一條出錯信息,然后通過調(diào)用 abort 來終止程序運(yùn)行。
二、char *strcpy(char *strDest, const char *strSrc)
字符串復(fù)制函數(shù)
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ); // 2分
return address ; // 2分
}
const char *strSrc中的const是指字符串內(nèi)容為const,而不是說strSrc是const的,如果要指定strSrc是const,應(yīng)該寫成 char * const strSrc 。
C字符串筆試題篇2
一、int Strcmp(char *str1, char *str2)
字符串比較函數(shù)
int Strcmp(char *str1, char *str2)
{
int i=0;
int b=0;
while(str1[i]||str2[i])
{
if(str1[i]>str2[i])
{
b=1;break;
}
else if(str1[i]
{
b=-1;break;
}
i++;
}
return b;
}
當(dāng)只要求判斷是否相等時,可簡化為:
int strcmp(char *source, char *dest)
{
while ( (*source != '\0') && (*source == *dest))
{
source++;
dest++;
}
return ( (*source) - (*dest) ) ? -1 : 0;
}
二、int strlen(const char* str)
計(jì)算字符串長度
int strlen(const char* str)
{
assert(str != NULL);
int len = 0;
while (*str++!='\0')
len++;
return len;
}
C字符串筆試題篇3
void reverse(char *ch)
字符串反轉(zhuǎn)函數(shù)
void reverse_str(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
char ctemp;
for(i = 0; i < len-i; i++)
{
ctemp = ch[i];
ch[i] = ch[len-i];
ch[len-i] = ctemp;
}
ch[len+1] = 0;
}
void reverse_str2(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
for(i = 0; i < len-i; i++)
{
ch[i] = ch[i] ^ ch[len-i];
ch[len-i] = ch[len-i] ^ ch[i];
ch[i] = ch[i] ^ ch[len-i];
}
ch[len+1] = 0;
}
返回值: 返回指向dest的指針
附加說明: 指針src和dest所指的內(nèi)存區(qū)域不可重疊
void * memcpy( void* dest, const void* src, size_t count )
{
assert((strDest!=NULL) && (strSrc !=NULL));
char* d = (char*)dest;
const char* s = (const char*)src;
while( count-->0 )
*d++ = *s++
return dest ;
}
注解:
1、size_t 就是unsigned int
2、
函數(shù)名: assert(斷言)
功 能: 測試一個條件并可能使程序終止
用 法: void assert(int expression);
assert宏的原型定義在中,其作用是如果它的條件返回錯誤,則終止程序執(zhí)行,原型定義:
#include
void assert( int expression );
assert的作用是現(xiàn)計(jì)算表達(dá)式 expression ,如果其值為假(即為0),那么它先向stderr打印一條出錯信息,然后通過調(diào)用 abort 來終止程序運(yùn)行。
二、char *strcpy(char *strDest, const char *strSrc)
字符串復(fù)制函數(shù)
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘
C字符串筆試題
C語言是世界上最流行、使用最廣泛的高級程序設(shè)計(jì)語言之一。A下面就由學(xué)習(xí)啦小編為大家介紹一下C字符串筆試題的文章,歡迎閱讀。
C字符串筆試題篇1
一、void * memcpy( void* dest, const void* src, size_t count )
表頭文件: #include
定義函數(shù): void *memcpy(void *dest, const void *src, size_t n)
函數(shù)說明:
memcpy()用來拷貝src所指的內(nèi)存內(nèi)容前n個字節(jié)到dest所指的內(nèi)存地址上。與strcpy()不同的是,memcpy()會完整的復(fù)制n個字節(jié),不會因?yàn)橛龅阶址Y(jié)束'\0'而結(jié)束。
返回值: 返回指向dest的指針
附加說明: 指針src和dest所指的內(nèi)存區(qū)域不可重疊
void * memcpy( void* dest, const void* src, size_t count )
{
assert((strDest!=NULL) && (strSrc !=NULL));
char* d = (char*)dest;
const char* s = (const char*)src;
while( count-->0 )
*d++ = *s++
return dest ;
}
注解:
1、size_t 就是unsigned int
2、
函數(shù)名: assert(斷言)
功 能: 測試一個條件并可能使程序終止
用 法: void assert(int expression);
assert宏的原型定義在中,其作用是如果它的條件返回錯誤,則終止程序執(zhí)行,原型定義:
#include
void assert( int expression );
assert的作用是現(xiàn)計(jì)算表達(dá)式 expression ,如果其值為假(即為0),那么它先向stderr打印一條出錯信息,然后通過調(diào)用 abort 來終止程序運(yùn)行。
二、char *strcpy(char *strDest, const char *strSrc)
字符串復(fù)制函數(shù)
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ); // 2分
return address ; // 2分
}
const char *strSrc中的const是指字符串內(nèi)容為const,而不是說strSrc是const的,如果要指定strSrc是const,應(yīng)該寫成 char * const strSrc 。
C字符串筆試題篇2
一、int Strcmp(char *str1, char *str2)
字符串比較函數(shù)
int Strcmp(char *str1, char *str2)
{
int i=0;
int b=0;
while(str1[i]||str2[i])
{
if(str1[i]>str2[i])
{
b=1;break;
}
else if(str1[i]
{
b=-1;break;
}
i++;
}
return b;
}
當(dāng)只要求判斷是否相等時,可簡化為:
int strcmp(char *source, char *dest)
{
while ( (*source != '\0') && (*source == *dest))
{
source++;
dest++;
}
return ( (*source) - (*dest) ) ? -1 : 0;
}
二、int strlen(const char* str)
計(jì)算字符串長度
int strlen(const char* str)
{
assert(str != NULL);
int len = 0;
while (*str++!='\0')
len++;
return len;
}
C字符串筆試題篇3
void reverse(char *ch)
字符串反轉(zhuǎn)函數(shù)
void reverse_str(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
char ctemp;
for(i = 0; i < len-i; i++)
{
ctemp = ch[i];
ch[i] = ch[len-i];
ch[len-i] = ctemp;
}
ch[len+1] = 0;
}
void reverse_str2(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
for(i = 0; i < len-i; i++)
{
ch[i] = ch[i] ^ ch[len-i];
ch[len-i] = ch[len-i] ^ ch[i];
ch[i] = ch[i] ^ ch[len-i];
}
ch[len+1] = 0;
}
return address ; // 2分
}
const char *strSrc中的const是指字符串內(nèi)容為const,而不是說strSrc是const的,如果要指定strSrc是const,應(yīng)該寫成 char * const strSrc 。
C字符串筆試題篇2
一、int Strcmp(char *str1, char *str2)
字符串比較函數(shù)
int Strcmp(char *str1, char *str2)
{
int i=0;
int b=0;
while(str1[i]||str2[i])
{
if(str1[i]>str2[i])
{
b=1;break;
}
else if(str1[i]
{
b=-1;break;
}
i++;
}
return b;
}
當(dāng)只要求判斷是否相等時,可簡化為:
int strcmp(char *source, char *dest)
{
while ( (*source != '
C字符串筆試題
C語言是世界上最流行、使用最廣泛的高級程序設(shè)計(jì)語言之一。A下面就由學(xué)習(xí)啦小編為大家介紹一下C字符串筆試題的文章,歡迎閱讀。
C字符串筆試題篇1
一、void * memcpy( void* dest, const void* src, size_t count )
表頭文件: #include
定義函數(shù): void *memcpy(void *dest, const void *src, size_t n)
函數(shù)說明:
memcpy()用來拷貝src所指的內(nèi)存內(nèi)容前n個字節(jié)到dest所指的內(nèi)存地址上。與strcpy()不同的是,memcpy()會完整的復(fù)制n個字節(jié),不會因?yàn)橛龅阶址Y(jié)束'\0'而結(jié)束。
返回值: 返回指向dest的指針
附加說明: 指針src和dest所指的內(nèi)存區(qū)域不可重疊
void * memcpy( void* dest, const void* src, size_t count )
{
assert((strDest!=NULL) && (strSrc !=NULL));
char* d = (char*)dest;
const char* s = (const char*)src;
while( count-->0 )
*d++ = *s++
return dest ;
}
注解:
1、size_t 就是unsigned int
2、
函數(shù)名: assert(斷言)
功 能: 測試一個條件并可能使程序終止
用 法: void assert(int expression);
assert宏的原型定義在中,其作用是如果它的條件返回錯誤,則終止程序執(zhí)行,原型定義:
#include
void assert( int expression );
assert的作用是現(xiàn)計(jì)算表達(dá)式 expression ,如果其值為假(即為0),那么它先向stderr打印一條出錯信息,然后通過調(diào)用 abort 來終止程序運(yùn)行。
二、char *strcpy(char *strDest, const char *strSrc)
字符串復(fù)制函數(shù)
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ); // 2分
return address ; // 2分
}
const char *strSrc中的const是指字符串內(nèi)容為const,而不是說strSrc是const的,如果要指定strSrc是const,應(yīng)該寫成 char * const strSrc 。
C字符串筆試題篇2
一、int Strcmp(char *str1, char *str2)
字符串比較函數(shù)
int Strcmp(char *str1, char *str2)
{
int i=0;
int b=0;
while(str1[i]||str2[i])
{
if(str1[i]>str2[i])
{
b=1;break;
}
else if(str1[i]
{
b=-1;break;
}
i++;
}
return b;
}
當(dāng)只要求判斷是否相等時,可簡化為:
int strcmp(char *source, char *dest)
{
while ( (*source != '\0') && (*source == *dest))
{
source++;
dest++;
}
return ( (*source) - (*dest) ) ? -1 : 0;
}
二、int strlen(const char* str)
計(jì)算字符串長度
int strlen(const char* str)
{
assert(str != NULL);
int len = 0;
while (*str++!='\0')
len++;
return len;
}
C字符串筆試題篇3
void reverse(char *ch)
字符串反轉(zhuǎn)函數(shù)
void reverse_str(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
char ctemp;
for(i = 0; i < len-i; i++)
{
ctemp = ch[i];
ch[i] = ch[len-i];
ch[len-i] = ctemp;
}
ch[len+1] = 0;
}
void reverse_str2(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
for(i = 0; i < len-i; i++)
{
ch[i] = ch[i] ^ ch[len-i];
ch[len-i] = ch[len-i] ^ ch[i];
ch[i] = ch[i] ^ ch[len-i];
}
ch[len+1] = 0;
}
{
source++;
dest++;
}
return ( (*source) - (*dest) ) ? -1 : 0;
}
二、int strlen(const char* str)
計(jì)算字符串長度
int strlen(const char* str)
{
assert(str != NULL);
int len = 0;
while (*str++!='
C字符串筆試題
C語言是世界上最流行、使用最廣泛的高級程序設(shè)計(jì)語言之一。A下面就由學(xué)習(xí)啦小編為大家介紹一下C字符串筆試題的文章,歡迎閱讀。
C字符串筆試題篇1
一、void * memcpy( void* dest, const void* src, size_t count )
表頭文件: #include
定義函數(shù): void *memcpy(void *dest, const void *src, size_t n)
函數(shù)說明:
memcpy()用來拷貝src所指的內(nèi)存內(nèi)容前n個字節(jié)到dest所指的內(nèi)存地址上。與strcpy()不同的是,memcpy()會完整的復(fù)制n個字節(jié),不會因?yàn)橛龅阶址Y(jié)束'\0'而結(jié)束。
返回值: 返回指向dest的指針
附加說明: 指針src和dest所指的內(nèi)存區(qū)域不可重疊
void * memcpy( void* dest, const void* src, size_t count )
{
assert((strDest!=NULL) && (strSrc !=NULL));
char* d = (char*)dest;
const char* s = (const char*)src;
while( count-->0 )
*d++ = *s++
return dest ;
}
注解:
1、size_t 就是unsigned int
2、
函數(shù)名: assert(斷言)
功 能: 測試一個條件并可能使程序終止
用 法: void assert(int expression);
assert宏的原型定義在中,其作用是如果它的條件返回錯誤,則終止程序執(zhí)行,原型定義:
#include
void assert( int expression );
assert的作用是現(xiàn)計(jì)算表達(dá)式 expression ,如果其值為假(即為0),那么它先向stderr打印一條出錯信息,然后通過調(diào)用 abort 來終止程序運(yùn)行。
二、char *strcpy(char *strDest, const char *strSrc)
字符串復(fù)制函數(shù)
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ); // 2分
return address ; // 2分
}
const char *strSrc中的const是指字符串內(nèi)容為const,而不是說strSrc是const的,如果要指定strSrc是const,應(yīng)該寫成 char * const strSrc 。
C字符串筆試題篇2
一、int Strcmp(char *str1, char *str2)
字符串比較函數(shù)
int Strcmp(char *str1, char *str2)
{
int i=0;
int b=0;
while(str1[i]||str2[i])
{
if(str1[i]>str2[i])
{
b=1;break;
}
else if(str1[i]
{
b=-1;break;
}
i++;
}
return b;
}
當(dāng)只要求判斷是否相等時,可簡化為:
int strcmp(char *source, char *dest)
{
while ( (*source != '\0') && (*source == *dest))
{
source++;
dest++;
}
return ( (*source) - (*dest) ) ? -1 : 0;
}
二、int strlen(const char* str)
計(jì)算字符串長度
int strlen(const char* str)
{
assert(str != NULL);
int len = 0;
while (*str++!='\0')
len++;
return len;
}
C字符串筆試題篇3
void reverse(char *ch)
字符串反轉(zhuǎn)函數(shù)
void reverse_str(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
char ctemp;
for(i = 0; i < len-i; i++)
{
ctemp = ch[i];
ch[i] = ch[len-i];
ch[len-i] = ctemp;
}
ch[len+1] = 0;
}
void reverse_str2(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
for(i = 0; i < len-i; i++)
{
ch[i] = ch[i] ^ ch[len-i];
ch[len-i] = ch[len-i] ^ ch[i];
ch[i] = ch[i] ^ ch[len-i];
}
ch[len+1] = 0;
}
len++;
return len;
}
C字符串筆試題篇3
void reverse(char *ch)
字符串反轉(zhuǎn)函數(shù)
void reverse_str(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
char ctemp;
for(i = 0; i < len-i; i++)
{
ctemp = ch[i];
ch[i] = ch[len-i];
ch[len-i] = ctemp;
}
ch[len+1] = 0;
}
void reverse_str2(char *ch)
{
int len;
int i;
len = strlen(ch)-1;
for(i = 0; i < len-i; i++)
{
ch[i] = ch[i] ^ ch[len-i];
ch[len-i] = ch[len-i] ^ ch[i];
ch[i] = ch[i] ^ ch[len-i];
}
ch[len+1] = 0;
}