首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

数组和指针的用法有关问题

2013-01-01 
数组和指针的用法问题#include iostream#include string.husing namespace stdvoid Reverse(char *co

数组和指针的用法问题


#include <iostream>
#include <string.h>

using namespace std;
void Reverse(char *code)
{
    int len;
    len = strlen(code);
    cout<<code[8];
    int i,j;
    char temp;
    for(i=0,j=len;i<j;i++,j--)
    {
        temp = code[i];
        code[i] = code[j];
        code[j] = temp;
    }
};
int main()
{
    char *code="iloveyou\0";
    Reverse(code);
    cout<<code[4]<<endl;
}




代码如上

我记得定义一个指针
char *p = "abcdefg";
然后可以这样取她得值:
p[1];//b
但是在调用哪个reverse那个函数的时候却用不了,为什么啊

还有定义一个数组
char m[10] = “ads”;
当然也能这样调用吧:*m;//就是a了吧

但是在外面调用某个函数的时候,却用不了  怎么回事?
[解决办法]
char *code="iloveyou\0";定义一个指针指向字符串常量,该常量不可改变。
这和char code[]="iloveyou\0";是两码事。
[解决办法]
引用:
char *code="iloveyou\0";定义一个指针指向字符串常量,该常量不可改变。
这和char code[]="iloveyou\0";是两码事。

++++++++++
"iloveyou\0"是个常量
应 const char* code="iloveyou\0"
[解决办法]
char *code="iloveyou\0";
改为:
char code[]="iloveyou\0";

热点排行