发新话题
打印

[原创]邪恶八进制短期C培训教材《说C》(第一部分)

命令行参数C primer plus第五版有介绍...,如果我没有记错的话是312页..

const int i = 0; /* 实质是个变量 */
const 是C的关键字吗???

const是一个C语言的关键字,它限定一个变量不允许被改变。

TOP

引用:
这里是引用第[30 楼]evilknight2006-09-17 16:35发表的:
命令行参数C primer plus第五版有介绍...,如果我没有记错的话是312页..

const int i = 0; /* 实质是个变量 */
const 是C的关键字吗???

.......
在c中const 的功能类似于#define
复制内容到剪贴板
代码:
#include <stdio.h>
int main(void)
{
  const int i = 0;
  int * pi = (int*)&i;
  *pi = 1;
  printf("0x%.8x:%d\n", &i, i);//这里编译器改为printf("0x%.8x:%d\n", &i, 0)
  printf("0x%.8x:%d\n", pi, *pi);
  return 0;
}
源静则流清 本正则丰茂 内修则外理 形端则影直

TOP

你这个c啊,写的不是很好,我学c学了一年多了,见过很多的东西。看语法会看晕人的,还是要从重点来看,c是一个面向过程的语言,不想c++等面向对象的语言 ,这一点一定要记住,do you understrand
白白逍遥 没有不可能

TOP

偶是经常看看一两页就睡着了 第二天又是不知不觉中看头一天看过的  很郁闷

TOP

#define 是预处理命令。只是做置换,不做任何检测..所以建议大家尽量用const替代#define
const 有类型之分,比如const int,const char....等..
而且在C中..不能用变量定义数组.C++可以...
#define M 10
const int N = 10;
int a[M]; //ok.
int a[N]; //error.

TOP

引用:
这里是引用第[17 楼]残冰雨落2006-08-24 00:47发表的:
可以更加详细么?.

int main(int argc, char **argv)
//为什么可以用void和int..两者有什么区别?..
//括号中间的char 是申明字符行的**argv?..星号又是什么意思哦?
int代表函数返回值为整数,一般来说,如果程序执行没有错误就会返回0
上边说过void main()是不合规则的写法,就是代表函数不接受任何参数,
记得还可以写做 int main(void)

另外main()函数中可以省略return 0; 其他函数是不可以的

TOP

谢谢.自学C 是用谭浩强的C程序设计.
也是按它说的 void main()
现在看到了无锋前辈教的指导 该改改了
void main()
其实这是不对的,因为这不是标准C中规定的写法,因此是不可移植的。以下两种形式才是具备移植能力的标准写法:
int main();
int main(int argc, char **argv);

TOP

引用:
这里是引用第[17 楼]残冰雨落2006-08-24 00:47发表的:
可以更加详细么?.

int main(int argc, char **argv)
//为什么可以用void和int..两者有什么区别?..
//括号中间的char 是申明字符行的**argv?..星号又是什么意思哦?
先举手报名学习...以前学过,没学好!

void应该是没有返回值,那么一个Main也就只是一个过程而已,基本上,一个合理的程序应该要一个返回值的.并且,即使return 0也是个好习惯!
而**argv,以后一起好好学好指针吧,应该是指向指针的指针类型,哎,晕了!
拙见.提供一个思考的角度!希望没有误导.呵呵!

TOP

似乎好久没有更新了:(
[s:73]
偶是菜鸟,偶也给大家加个料:)大牛们别嫌弃偶占用空间 [s:79]
这个是网上流传的《C++从零开始》,偶在邪恶一直没有看到过,可能大家都是牛淫不愿意看低级的吧。。

附件

C++从零开始.rar (104 KB)

2006-10-1 12:46, 下载次数: 158

C++从零开始

珍爱生命,潜心修炼,早日成仙。

TOP

C/C++ 中从来没有定义过void main( ) 。C++ 之父 Bjarne Stroustrup 在他的主页上的 FAQ 中明确地写着 The definition void main( ) { /* ... */ } is not and never has been C++, nor has it even been C.( void main( ) 从来就不存在于 C++ 或者 C )。

操作系统通过main的返回值来判断程序是否正常结束...

*代表指针

TOP

谭老的书却是 不错
以后还去图书馆看 嘿嘿

TOP

老谭的C我看几遍的了,现在只能用来写一些简单到不能再简单的程序,计算器这种呢…… [s:79]
My Blog:http://www.hackest.cn/ [H.S.T]:http://www.hackm.com/

TOP

C呀~  学是学了  门也入了 就是没办法向里走 ,根本就找不到路 烦呀~
  找过很多书 但是从想从入门过度到能够编写基本的程序 好困难 [s:88]

TOP

[s:70]  潭浩强的比较深入浅出,容易上手和入门,建议哪为去搞个电子版来

好象TC也升级了

TOP

[s:35] 现在搞网络管理,管着管着又得编程了,回头学吧。。谭老的书没买,以前同学扔给了我一本,看到后面就迷糊

TOP

潭浩强的C语言电子版,我到是有一本,只是我刚来这还不熟悉,看看一会该上传到哪里

TOP

我也是C语言学习者。。但是我现在学到算法那一章节 就学不下去了。。哎。。比叫难啊。。还有函数 等等。。需要结合高等数学啊。。我没那么高的文化。呵呵  [s:35]

TOP

对于变成语言,我比较熟练的就是vb,c和c++以及c#都不太熟悉。

TOP

引用:
引用第49楼zyy15172006-11-15 22:04发表的:
C++ Primer Plus  学习它还需要什么基础吗~~我什么都不会的~~
直接看。即使你什么也不会。

不过作者口水好多。

TOP

还好我只会用C/C++,看了vb,DELPHI的程序,好长,好多的字符,乱乱的。
c就不会啊,语句看上去简单,起码变量名字没那么多麻烦。但现在做VC,变量又长了,唉,烦死了。
学c最好来到unix下,因为,这里更好体现了c下面的那些定义什么的,没有很多特殊的创意。
都是有理可据的。

TOP

晕啊,

        #include <stdio.h>

int main(int argc, char **argv)
{
  printf(“hello world!\n”);
  return 0;
}



为什么这段代码 偶在turboc了里一执行就错误,偶还以为是自己的操作问题 , 多试了几次都一样,于是在WINTC里编译还是一样,错误信息是这样显示的,
错误 noname.c 5: 非法字符 &#39;? (0xa1)在 main 函数中
错误 noname.c 5: 非法字符 &#39;? (0xb0)在 main 函数中
错误 noname.c 5: 未定义的符号&#39;hello&#39;在 main 函数中
错误 noname.c 5: 函数调用缺少 &#39;)&#39;在 main 函数中
错误 noname.c 5: 非法字符 &#39;\&#39; (0x5c)在 main 函数中
错误 noname.c 5: 非法字符 &#39;? (0xa1)在 main 函数中
错误 noname.c 5: 非法字符 &#39;? (0xb1)在 main 函数中
警告 noname.c 7: 参数&#39;argv&#39;从未使用在 main 函数中
警告 noname.c 7: 参数&#39;argc&#39;从未使用在 main 函数中
***  编译出现 7 个错误  ***
      可用内存  399890     

很不理解为什么会这样,偶是新手 刚刚开始学C的,还望多多请教......

TOP

而且偶也发现了,偶经常在网上复制一段非常高深的什么shellcode,当然是完整的了,保证一个字符都不少,满怀激动的心情去编译时 总是遇到这样的情况,大小和多少不计,几乎大部分都是这样,错误 noname.c 5: 非法字符 &#39;? (0xa1)在 main 函数中  之类的,郁闷。。。。。

TOP

谭老那本书其实还是不错的。只是必须自己去看,如果有老师讲解,那本书就没法看了。

TOP

引用:
引用第51楼chk于2007-03-02 03:16发表的 :
晕啊,

      #include <stdio.h>

int main(int argc, char **argv)
.......
正确的:
复制内容到剪贴板
代码:
#include <stdio.h>

int main(int argc, char **argv)
{
printf("hello world!\n");
return 0;
}
一定要用英文字符半角符号来编写程序部分。
我修改了这一句
复制内容到剪贴板
代码:
printf("hello world!\n");
您可以自己看看我修改了什么地方。
引号。:)
曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

引用:
引用第3楼冰血封情于2005-02-25 00:15发表的 :
教的是一种毒害广大人民群众的学习方法 看他的书 困
我不仅仅是看潭浩强的书才觉得困.

原先我看了一本C++语言程序设计,也是弄得云里雾里.

TOP

发新话题