Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Пытаюсь изучить VC++, уже появились проблемы...
 
 автор: Саня   (20.02.2006 в 20:09)   письмо автору
 
 

Решил изучить C++. Поставил себе Microsoft Visual C++ 6.0. Создаю проект "Win32 Console Application". Пишу:
#include <stdio.h>
void main(void) {
  char ch;
  ch = "Hello!";
  puts(ch);
}

И получаю:
--------------------Configuration: Hello - Win32 Debug--------------------
Compiling...
Hello.cpp
D:\Program Files\vc\MSDev98\MyProjects\Hello\Hello.cpp(5) : error C2440: '=' : cannot convert from 'char [7]' to 'char'
        This conversion requires a reinterpret_cast, a C-style cast or function-style cast
D:\Program Files\vc\MSDev98\MyProjects\Hello\Hello.cpp(6) : error C2664: 'puts' : cannot convert parameter 1 from 'char' to 'const char *'
        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
Error executing cl.exe.

Hello.obj - 2 error(s), 0 warning(s)

Вроде всё правильно. Объявил переменную ch текстовым типом, а значение не присваивается :(

   
 
 автор: codexomega   (20.02.2006 в 20:16)   письмо автору
 
   для: Саня   (20.02.2006 в 20:09)
 

Так вы в char хотите запихать String

   
 
 автор: codexomega   (20.02.2006 в 20:20)   письмо автору
 
   для: codexomega   (20.02.2006 в 20:16)
 

char * myString = "Hello";
или
char myString [20] = "Hello";

   
 
 автор: Саня   (20.02.2006 в 20:41)   письмо автору
 
   для: Саня   (20.02.2006 в 20:09)
 

О! Спасибо.
Вот ещё:
#include <stdio.h>
typedef struct {
  char *name;
  int number;
  float flt;
} some_array;

void main(void) {
  some_array my_array;
  my_array.name = "123";
  my_array.flt = 1.0001;
  my_array.number = -2000;
  printf("%s %f", my_array.name, my_array.flt);
}

Почему в консоли выдаёт мне "1.000100" вместо "1.0001"?

Где можно найти хороший справочник по VC (такой, как у PHP)? MSDN не предлагать.

   
 
 автор: codexomega   (20.02.2006 в 21:05)   письмо автору
 
   для: Саня   (20.02.2006 в 20:41)
 

printf("%s %7.4f", my_array.name, my_array.flt);


%7.4f -> 7 цифр(максимум) до запятой и 4 цифры(максимум) после запятой.

Можете менять формат вывода как вам нужно.

Сам справочник искал, пока не нашел ничего кроме примитивных tutorial.

   
 
 автор: Евгений Петров   (20.02.2006 в 21:42)   письмо автору
 
   для: Саня   (20.02.2006 в 20:41)
 

MSDN не предлагать.
Очень зря, уметь им пользоваться то лучше справочника нет, а если Вас английский смущает (то как говорят у нас в универе: Ваши проблемы:)) ), а если серьезно, то есть руссифицированая версия MSDN.

   
 
 автор: Саня   (20.02.2006 в 21:54)   письмо автору
 
   для: Евгений Петров   (20.02.2006 в 21:42)
 

Я знаю. Только оффлайн-версии этой библиотеки у меня нет, а на сайт лезть каждый раз - никаких денег не хватит на интернет. У меня всё ещё диал-ап (GPRS, если быть точным).

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования