
【c问题集锦】
zwb8848happy
酷得惊动了党
展开
-
scanf问题
(见帖子http://topic.youkuaiyun.com/u/20120229/16/711e7609-1605-4965-ab24-11e5a935cc9b.html): 问题: #include int main() { int i ; char a[5] ; for(i = 0 ; i < 5 ; i++) { scanf("%c原创 2012-03-24 14:18:48 · 482 阅读 · 0 评论 -
字符串
#include int main(void) { char* s1 = "Hello, World!\0"; char* s2 = "abcdef\0"; printf(s1); s1++; s2++; *s1 = *s2; printf(s1); return 0; } 问:为什么*s1和*s2不相等呢?原创 2012-03-24 11:11:58 · 340 阅读 · 0 评论 -
Ctrl+Z问题
问题: 下面一题为什么当我输入: a空格b空格c空格Ctrl+Z 时无输出呢? 但是当我输入a空格b空格c空格回车,再按Ctrl+Z是就有输出呢? #include int main() { char ch,s[20]; int index=0,i; //index为下标 while (scanf("%c",&ch)!=EOF) { s原创 2012-03-24 15:17:53 · 807 阅读 · 1 评论 -
对数组名取地址
问题: 请问这道题输出结果是多少?为什么? main() { int a[5] = {1,2,3,4,5}; int *ptr = (int*)(&a+1); printf("%d %d" , *(a+1), *(ptr-1)); } 答案:2,5 分析: 第二个(&a+1)中的&a取得是整个数组的首地址,&是对整个数组操作的,所以(&a+1)即ptr1指向原创 2012-03-26 19:57:24 · 515 阅读 · 0 评论