字符数组的初始化和赋值

<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">char c[]="I am happy ";
char c[ ]={'I' ,' ','a','m','','h','a','p','p','y,'\0'} ;//初始化的方法;
//<span style="font-family: Arial, Helvetica, sans-serif;">赋值的方法:</span>
s="xyz";
s[]="xyz"; 赋值必须有数组字符个数4(错误)
s[0]='x';
s[1]='y';
s[2]='z';
s[3]='\0';
使用strcpy函数赋值:(以下均为双参数)
char s[5];
strcpy(s,"ABCD")后赋于前
注:strcat为前后连接;strcmp为比较,返回0正(1串大于2串)负;strstr求子串的位置,返回从子串起始处后半部分
cin.getline(字符串变量,变量大小)可以有空白,遇enter结束;

</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">#include "stdafx.h"</span></span>
<span style="font-size:18px;"><strong>#include <iostream></strong>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	int i=0;
	char s[10];//error:Stack around the variable 's' was corrupted,当输入a-j十个字符时,提示数组越界,这是因为</span>
<span style="font-size:18px;">//有一个结束符是自动加上的,实际共有11个字符;
	cin>>s;
	for (i=0;i<10;i++)
	{
		if(s[i]>=97&&s[i]<=122)
		s[i]=s[i]-32;
	}
	for (i=0;i<10;i++)
		cout<<s[i]<<" ";
	return 0;
}</span>
教程的方法是一个三目运算符:
s[i]=(islower(s[i])?toupper(s[i]):toupper)//将小写字母改为大写
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值