鱼C论坛

 找回密码
 立即注册
查看: 2417|回复: 5

[技术交流] C++旅程第二站———复合类型(

[复制链接]
发表于 2020-4-20 21:14:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 这是她 于 2020-4-21 12:13 编辑

You were born with wings.Why prefer to crawl through life?


想知道复合类型有哪些吗?

             快快快    跟上我的小步伐

古灵精怪的数组来喽
  1. #include<iostream> //输入输出是由iostream库提供的

  2. using namespace std;

  3. int main()
  4. {
  5.         int cards[4] = {3,5,6,7};// √ 在数组初始化的时候给数组赋值
  6.         
  7.         int bee[4];//√ 数组初始化
  8.         bee = {2,5,8,4};//× 不能先把数组先初始化,再赋值哦!注意了哦
  9.         bee = cards;//× 数组初始化以后不能将一个数组赋值给另外一个数组
  10.         bee[0] = 4;
  11.         bee[1] = 6;
  12.         bee[2] = 1;
  13.         bee[3] = 8;//√ 数组初始化以后可以使用下标给数组赋值,下标要从0开始哦!
  14.       
  15.         int candy[5] = {1};//√ 如果只对数组的一部分初始化,编译器会将其他元素设置为0
  16.         
  17.         int tree[] = {4,6,8,1};//√ 如果初始化数组时方括号为空时,编译器将自动计算元素个数
  18.         
  19.         int ball[6] {3,5,2,6,8,0}; //√ 初始化数组时,可省略(=)——只在C++11才允许哦!
  20.         //以上的对数组的初始化都要记牢哦!
  21.         
  22.         cout << "Total cards = ";
  23.         cout << cards[0]+cards[1]+cards[2]+cards[3] << endl;//可以通过下标访问数组元素哦!
  24.         
  25.         cout << "The first member in candy is :" << candy[0] << endl;
  26.         cout << "The third member in candy is :" << candy[4] << endl;//看吧!其他的没有赋值的是0呢
  27.         
  28.         cout << "Size of tree array = " << sizeof tree << endl;//sizeof用于数组名--->整个数组中的字节数
  29.         cout << "Size of one element = " << sizeof tree[2] << endl;//sizeof用于数组元素--->元素的长度
  30.         
  31.         return 0;
  32. }
复制代码




自带bgm的字符串徐徐驶来............



  1. #include <iostream>
  2. #include <string>
  3. #include <cstring>

  4. using namespace std;

  5. int main()
  6. {
  7.          char pork[10];//空空如也
  8.          char beef[10] = {'d','e','l','i','c','i','o','u','s','0'};//认真看哦!它可不是一个字符串
  9.          char roast[10] = {'d','e','l','i','c','i','o','u','s','\0'};//来啦来啦,这才是真真的呢,最后以空字符结尾
  10.         
  11.          char fish[20] = "delicious" ;//他看起来是不是简洁多了(*^_^*),还能隐式的包括不显示呢
  12.          //在使用数组的时候还得确保数组足够大,以便能够存储字符串中的所有字符(包括'\0')
  13.         
  14.          string ham1,ham2;
  15.          string ham3 = "tasty";
  16.          //使用string类定义字符串
  17.          
  18.          beef = roast;//不可以呢,这是数组
  19.          ham1 = ham3;//这是可以的哦
  20.          
  21.          cout <<  "The price of pork is :" << endl;
  22.          cin.getline(pork,10);//读取一整行放入到pork数组中。它通过换行符来确定结尾,但不保存换行符
  23.          cout << "You think the pork is :" << pork << endl;
  24.          
  25.          cout <<  "The price of pork is :" << endl;
  26.          cin.get(pork,10).get();//这样写可以检查下一个字符是不是换行符。是-->已经读取了整行;否-->该行中还有其他输入
  27.          cout << "You think the pork is :" << pork << endl;
  28.          
  29.          cout << strlen(fish) << "and" << sizeof(fish) << endl;
  30.          //strlen是返回存储在数组中字符串的长度;sizeof是指出整个数组的长度
  31.          
  32.           cout << "ham1 :" << ham1 << endl;//将ham3赋值给ham1
  33.          
  34.           ham3 += "  food";
  35.           cout << "ham3 :" << ham3 << endl;
  36.           strcat(ham1, " meat");
  37.           cout << "ham1 :" << ham1 << endl;//将字符串拼接在另一个字符串之后
  38.          
  39.           ham2 = ham1;
  40.           cout << "ham2 :" << ham2 << endl;
  41.           strcpy(ham2, ham3);
  42.           cout << "ham2 :" << ham2 << endl;//以上两个都是将一个字符串复制到另一个字符串中
  43.                     
  44.           return 0;
  45. }
复制代码






渣渣一个,大佬们手下留情
         点都点开了,不给点建议再走吗(会继续努力的呢





本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-20 21:31:50 | 显示全部楼层
1,第二个main没有int
2,建议把using namespace std;写在#include后面。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-21 00:46:15 From FishC Mobile | 显示全部楼层
能不能做一个string 互换 char*的函数出来?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-21 11:40:48 | 显示全部楼层
qiuyouzhi 发表于 2020-4-20 21:31
1,第二个main没有int
2,建议把using namespace std;写在#include后面。

好嘞哥
  感谢感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-21 11:42:26 | 显示全部楼层
howzyao 发表于 2020-4-21 00:46
能不能做一个string 互换 char*的函数出来?

不知道您是想两字符串互换啊还是一个字符串反过来啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-5 19:28:55 | 显示全部楼层
         cin.get(pork,10).get();//这样写可以检查下一个字符是不是换行符。是-->已经读取了整行;否-->该行中还有其他输入
         cout << "You think the pork is :" << pork << endl;
这个不是很懂,现在不是要用fgets吗?
这个是如何检查下一个字符不是换行符的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 06:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表