2 getoutdo getoutdo 于 2015.06.22 08:57 提问

c++问题 指向字符串的指针

#include "stdafx.h"
#include
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
char *s = "Hello";
char *t = "World";
int i = strcmp(s, t);
if (i > 0)
cout << "s>t" << endl;
else if (i < 0)
cout << "s<t" << endl;
else
cout << "s=t" << endl;
int j = strlen(s);
cout << endl;
cout << "字符串s的长度为:" << j << endl;
return 0;
}
Error 2 error C2001: newline in constant 22 1

Error 3 error C2143: syntax error : missing ';' before 'return' 23 1
Warning 1 warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss

求高手改错,不胜感激!

5个回答

getoutdo
getoutdo   2015.06.22 09:39

图片说明

getoutdo
getoutdo 编译器是visual studio community 2013
大约 3 年之前 回复
getoutdo
getoutdo 回复菜的不一般: 第一个错误指向 cout << "字符串s的长度为:" << j << endl;第二个错误指向return 0;
大约 3 年之前 回复
lx624909677
lx624909677 双击一下error,看看指向了哪行
大约 3 年之前 回复
lx624909677
lx624909677   Ds   Rxr 2015.06.22 09:40

用的什么编译器,VC6的话就把所有的变量声明都写在前面

yongfu_jiang
yongfu_jiang   2015.06.22 09:52

我运行也没问题图片说明

wzgwxl2008
wzgwxl2008   2015.06.22 16:26

#include "stdafx.h"
#include
#include
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
char *s = "Hello";
char *t = "World";
int i = strcmp(s, t);
if (i > 0)
cout << "s>t" << endl;
else if (i < 0)
cout << "s<t" << endl;
else
cout << "s=t" << endl;
int j = strlen(s);
cout << endl;
cout << "字符串s的长度为:" << j << endl;
return 0;
}

"Microsoft Visual Studio 2010"编辑正确通过。

u011073212
u011073212   2015.06.22 09:34

没问题可以运行,你的头文件不是故意漏掉的吧

getoutdo
getoutdo 头文件可能是我在复制粘贴的时候漏掉的吧,我在visual studio 2013上不能运行,截图敬上
大约 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C语言字符串指针(指向字符串的指针)
C语言中没有特定的字符串类型,我们通常是将字符串放在一个字符数组中,这在《C语言字符数组和字符串》中已经进行了详细讲解,这里不妨再来演示一下: #include int main(){ char str[] = "http://c.biancheng.net"; int len = strlen(str), i; //直接输出字符串 printf("%s\n",
c语言之指向字符串的指针学习笔记
指向字符串的指针1: 什么是字符串:用双引号括起来的0个或多个字符。&quot;123&quot;2: 字符串的结束符号'\0'       '\0'它是一个字符,不是一个字符串3: 字符串的输出:    printf(&quot;%s&quot;,数组名);   puts(字符串);    输入:              scanf();       gets();4:  strlen:用来测量一个字符串中所包含的字符个数   指...
C语言二级指针做函数参数改变该指针的指向
一、测试代码如下: //C语言二级指针做函数参数改变该指针的指向 #include void change_pointer(char **pp) { char *str="the pointer has been changed! \n"; *pp=str; } int main(int argc, char **argv) { char *p=NULL;
字符串常量指针、常量指针和指针常量区别
char *p = "abcd"; *p = 'b'; printf("%c\n", p[0]); 以上代码有什么问题?    首先,编译器在常量区保存一个字符串abcd,其内容不许修改。 char *p = "abcd"; // p是一个指针,直接指向常量区,修改p[0]就是修改常量区的内容,这是不允许的。 char p[] = "abcd"; // 编译器在栈上创建一个字符
指针指向字符串常量和数组存放字符串常量(char *p="abcd", char p[]="abcd")
指针指向字符串常量和数组存放字符串常量(char *p=”abcd”, char p[]=”abcd”)代码结果分析 fun()函数 首先abacd字符串是在静态常量区分配的内存,然后指针c在栈里分配的内存,然后将指针指向”abacd”所在的内存块。所以程序结束后,返回的是指针c的内容,指针里存放的都是什么???地址。在fun()函数中,c存放的是”abacd”的地址,而这个地址所在内存是在静态常
C语言字符串反转实现【采用头指针和尾指针方法完成】
示例代码如下:#include #include #include void reverseStr(char *str) { int length; char *p1; char *p2; length = strlen(str); //获取字符串长度 p1 = str; //p1指向字符串首地址 p2 = str + length - 1; //
c语言 如何用指针来处理字符串?
一字符指针 1字符指针输出字符串 2字符指针处理字符串 3字符数组与字符指针处理字符串有何不同 二指针数组读者,你好! 如果你精通C,希望能得到你的斧正;如果你是初学者,希望能对你有所帮助。 加粗的是一些我认为比较重要的内容。一、字符指针1、字符指针输出字符串为了更好的理解这部分内容,我们先看一个例子:#include <stdio.h> int main() { char *ps
C语言中指向字符串常量的指针与指向字符串数组的指针
char str[] = &quot;1234567asdf&quot;;char *pstr = str;上面是定义了一个字符串数组及一个指向这个字符串数组的指针,可以通过这个指针对数组中的内容进行操作;例如:*(pstr + i) = 'a';                但是下面的情况不可以直接对数组进行操作:char *str = &quot;1234567asdf&quot;;这种情况下,指针指向的内容是一个字符串常量,常量...
C/C++ 指向字符的指针为什么可以用字符串来初始化,而不是字符地址。
本文是通过几篇转帖的文章整理而成的,内容稍有修改: 一、 C语言中,为什么字符串可以赋值给字符指针变量 char *p; a='5'; p=&a;                     //显然是正确的, p="abcd";              //但为什么也可以这样赋值?? 问:一直理解不了为什么可以将字串常量赋值给字符指针变量,请各位指点!  
98 C语言二级指针(指向指针的指针)
C学习网:链接->C学习网 C训练网:链接->C训练网 指针可以指向一份普通类型的数据,例如 int、double、char 等,也可以指向一份指针类型的数据,例如 int *、double *、char * 等。 如果一个指针指向的是另外一个指针,我们就称它为二级指针,或者指向指针的指针。 假设有一个 int 类型的变量 a,p1是指向 a 的指针变量,p2 又是指向