数组和char*相互赋值的简单问题

hejialin666 2008-11-25 03:22:09

1.
char* k = "hfada";
char c[10];
c = k;//char*的值赋给数组怎么做?
cout<<c;

getchar();
return 0;

2.
char* k;
char c[10] = {'1','2','3','4','7'};
k = c;//数组的值赋给char*怎么做?
cout<<k;

getchar();
return 0;


刚学c++,概念有些不清,望大家指教!
...全文
1184 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hejialin666 2008-11-25
  • 打赏
  • 举报
回复
不到半个小时解决问题,结贴!
lbh2001 2008-11-25
  • 打赏
  • 举报
回复
如果像这种形式:char* k = 经某种方式返回的字符串,也不知返回了多少。
这时要求k中的字符个数,怎么求?

/////////////////////////

用库函数 strlen(k)就可以得到k中的字符个数
donie_linux 2008-11-25
  • 打赏
  • 举报
回复
char c[10];
c只是一个地址,是个产量,不能改,c = k是错的

当前的字符数可以自己算啊。
hejialin666 2008-11-25
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lbh2001 的回复:]
引用 5 楼 hejialin666 的回复:
补充问一下:
怎么能知道char* k里当前有多少个字符了?
就是有多长了?

k要有指向才有长度 k = malloc(N);此时k有N字节长
不指向的话,k没有长度,作为指针变量K本身有sizeof(char*)空间
[/Quote]
如果像这种形式:char* k = 经某种方式返回的字符串,也不知返回了多少。
这时要求k中的字符个数,怎么求?
谢谢?
lbh2001 2008-11-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hejialin666 的回复:]
补充问一下:
怎么能知道char* k里当前有多少个字符了?
就是有多长了?
[/Quote]
k要有指向才有长度 k = malloc(N);此时k有N字节长
不指向的话,k没有长度,作为指针变量K本身有sizeof(char*)空间
hejialin666 2008-11-25
  • 打赏
  • 举报
回复
补充问一下:
怎么能知道char* k里当前有多少个字符了?

就是有多长了?
zjw6861982 2008-11-25
  • 打赏
  • 举报
回复
1楼的说的比较详尽了
liyudefly 2008-11-25
  • 打赏
  • 举报
回复
1.
char* k = "hfada";
char c[10];
c = k;//char*的值赋给数组怎么做?//这时错了,c是个地址常量, 不能被赋值,如果要改变数组中的值,用内存拷贝命令memcpy(c,k,6)
cout<<c;

getchar();
return 0;

2.
char* k;
char c[10] = {'1','2','3','4','7'};
k = c;//数组的值赋给char*怎么做?  //这里是可以的,k里存的是地址,没有问题
cout<<k;

getchar();
return 0;
Mougou 2008-11-25
  • 打赏
  • 举报
回复
1,用strcpy
2,你的用法就行,但要在数组c的末尾加个结束符
lbh2001 2008-11-25
  • 打赏
  • 举报
回复

1.
char* k = "hfada";
char c[10];
c = k;//char*的值赋给数组怎么做?----> c是常量指针,不可以改变,用strncpy(c, k, sizeof(c));
cout<<c;

getchar();
return 0;


2.
char* k;
char c[10] = {'1','2','3','4','7'};
k = c;//数组的值赋给char*怎么做?---->这句使k指向c数组,如果需要复制字符串的话用k=malloc(sizeof(c)); strncpy(k, c, sizeof(c));
cout<<k;

getchar();
return 0;

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧