**记录PAT进度**

1.16

  1. 关于算法笔记的gets函数不可用:改为getline(cin,a) 用这个可以避免用cin 出现的空格读取不了的问题。
  2. 或者用:cin.getline(字符指针(char*),字符个数N(int),结束符(char));
    第一个参数为第一个读取的字符的位置,通常为数组名。
    第二个参数为读取的字符的个数。
    第三个参数是结束符,可以省略,省略则默认为回车键结束

1.17

  1. 关于控制格式输出:如果输出为中间有空格,但是最后一个数之后无空格,
    可以先用for 循环求得总输出个数。
    也可以用如下:
int flag=0;
				for(int i=n-1; i>=0; --i)
					if(!b[a[i]])
				    {
						if(flag==1)
							cout<<" "<<a[i];
						else {
							flag=1;
							cout<<a[i];
						}
					}

今天跟学长聊了跨保的事情,感觉心里很没底呀。看了看别人的面试题,好像都很难的样子。无论如何加油吧!

1.18

今天出去吃酒了

1.19

今天少写了一个等于的条件,找了好久才找出来。

1.20

今日疑惑:为什么用for(;;)break;就超时,用 while() break; 就不会。

1.21

今天遇到了intstring的相互转换

string to number

C++的标准库函数里面只提供了大量的从string to number的方法
C++中若需要将string类型转为int类型,需先将string转为const char*。

函数原型:

const char *c_str();

例如:

sting str="hello world";
int i = atoi(str.c_str());
String conversion
atofConvert string to double
atoiConvert string to integer
atolConvert string to long integer
atollConvert string to long long integer
strtodConvert string to double
strtofConvert string to float
strtolConvert string to long integer
strtoldConvert string to long double
strtollConvert string to long long integer
strtoulConvert string to unsigned long integer
strtoullConvert string to unsigned long long integer

number to string

但是如果想要将number转换成string,就麻烦了,网上大量的方法都是使用itoa()函数,但问题是,itoa()并不在c++的标准库当中,虽然大多数的compiler都支持,但是偶尔也会有compiler不认的情况。。比如我就遇到了。。

那么c++标准库函数当中有没有方法能实现number到string的转换呢?

答案就是这个函数:

int sprintf ( char * str, const char * format,);

buffer是字符数组名;format是格式化字符串;

#include <stdio.h>

int main ()
{
  char buffer [10];
  sprintf (buffer, "%d\n", 65);
  printf ("%s\n",buffer);
  return 0;
}

参考文章:https://blog.csdn.net/founderznd/article/details/51587587

关于怎么去掉string前面的 ’0‘ ,然后输出:

 while(ans.size()!=0&&ans[0]=='0'){
    ans.erase(ans.begin());
}
 if(ans.size()==0)
     cout<<0;
 else
     cout<<ans;

ASCII码表

控制字符ASCII值
048
A65
a97
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值