程序员面试宝典-字符串

  • 考察整数字符串转换

怎样将整数转化成字符串数,且不用itoa函数?

题目解析:使用求余运算计算出各位数字然后输出,int类型+'0'隐性转换为字符类型。

int a=123456;
vector<char> vec;
char temp;
	
while(a)
{
    temp=a%10+'0';
    vec.push_back(temp);
    a=a/10;
}
	
vector<char>::iterator pi;
	
for(pi=vec.end();pi!=vec.begin();pi--)
{
    cout<<*pi;
}cout<<*pi;

怎样将字符串转换为整数?

题目解析:char类型-'0',char隐性转换为int类型。

char chr[10]="012345678";
int num=0;
	
for(int i=0;chr[i]!='\0';i++)
{
    num*=10;
    num+=chr[i]-'0';
    cout<<num<<endl;
}
cout<<num;


  • 考察字符串拷贝

串拷贝(strcpy)与内存拷贝(memcpy)有何不同?

结果:串拷贝只能拷贝字符串,遇到'\0'截止;内存拷贝能拷贝各种数据类型,内存拷贝需要指定拷贝内存大小。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值