C语言程序设计,我就纳闷了,这个程序能有问题??

#include <stdlib.h>
#include <stdio.h>
int main()
{
  int n;
  char *str="1233";
  n=atoi(str);
  printf("string=%s integer=%d\n",str,n);
  system("pause");
return 0;
}
编译报错说的是stay "\161" in program,但是我检查了一般没出现全角字符啊

第1个回答  2012-11-30
程序没有问题,是你的编译器出了问题。
第2个回答  2012-11-30
#include <stdlib.h>
#include <stdio.h>
int main()
{int n;
char *str="1233";
n=atoi(str);
printf("string=%s integer=%d\n",str,n);
system("pause");
return 0;
}

你的全角符是空格。。。。。
望采纳啊~~~~~~~追问

代码左边空格怎么看出来的啊

追答

首先转到错误行,用鼠标拉黑一个空格的位置,看看有多宽就知道了。
就像逗号一样,全角和半角占的宽度不同。
不懂再问。
望采纳。。。

追问

好像还是不太明白!中文空格长点还是因为空格长啊?

追答

可以这样理解吧。
英文是半角,中文是全角。

追问

其他符号还好说,空格怎么区分全角还是半角啊

追答

我刚刚试了一下,的确难以发现。
所以呢,你可要多多练程序,做多了就好了

追问

是啊,我大概看了下,全角空格和半角空格好像差不多长

本回答被网友采纳
第3个回答  2012-12-01
你把程序用半角的重新输入下,你的类型关键字在编译器里都没有识别。我改了后在我这里一切正常。
第4个回答  2012-11-30
我也觉得奇怪呢,把你的代码复制下来一看,呵呵,你是神仙,居然用汉字空格.追问

有吗? printf("string=%s integer=%d\n",str,n);你是说这里吗?我看看

看了下,没发现什么问题啊
你看出什么问题了,能详细说下吗?谢谢了!

追答

我晕,你就只看到代码了?左边的排版的空位全是全角空格.

追问

多谢提醒,话说这个空格是不是全角你怎么看出来的啊!

追答

你把代码直接贴到VC里,对的就没那么整齐了